2010-08-11 27 views
19

Tôi đang cài đặt mã Clicky trên trang web Magento. Tôi chỉ muốn sử dụng trình theo dõi HTTPS của họ trên các trang đã bật HTTPS của Magento. Tôi có thể làm cái này như thế nào?Tôi có thể kiểm tra HTTPS trong các tệp PHTML của Magento không?

tôi đã cố gắng

<?php if($_SERVER['https'] == 'on') : ?> 

nhưng điều đó không làm việc.

Bất kỳ đề xuất nào về việc xác định các trang HTTPS sẽ rất hữu ích!

Cảm ơn.

+0

Là ghi chú bên cho câu trả lời dưới đây, bạn không thể bỏ qua giao thức? –

Trả lời

59

Magento thực sự cung cấp phương pháp cho việc này cho bạn.

Sử dụng này để kiểm tra xem bạn đang ở trong chế độ an toàn:

// check to see if your store is in secure mode 
$isSecure = Mage::app()->getStore()->isCurrentlySecure(); 

Hy vọng rằng sẽ giúp!

Cảm ơn, Joe

+0

Giải pháp gốc +1 luôn thắng. –

+0

getStore() -> isCurrentlySecure()):>

+0

Tôi đã sử dụng tùy chọn này vì tôi muốn sử dụng giải pháp sẵn có. Tôi chắc chắn rằng các phương pháp khác cũng hoạt động tốt. Cảm ơn rất nhiều đến tất cả mọi người đã trả lời. –

-3

Điều này có vẻ hơi "hack" nhưng bạn có thể kiểm tra giao thức máy chủ và kiểm tra sự tồn tại của các ký tự "HTTPS" trong giao thức không? :

<?php 
$protocol = $_SERVER['SERVER_PROTOCOL']; 
$protocol = substr($protocol,0,5); //will return something like HTTP/ or HTTPS 
if(preg_match("^HTTPS^",$protocol)){ 
echo "ITS HTTPS"; 
} 
?> 
-3

Việc đặt cược tốt nhất là như sau

<?php if($_SERVER['HTTPS'] || strtolower($_SERVER['HTTPS']) == 'on'){ /* HTTPS */ } else{ /* NOT SO HTTPS */ } ?> 
4

Native Magento giải pháp

$isSecure = Mage::app()->getFrontController()->getRequest()->isSecure(); 
($isSecure) ? 'https://' : 'http://'; 

Điều này giúp kiểm tra xem phía trước cửa hàng của bạn là trong https hoặc http

Các vấn đề liên quan