2015-08-01 2 views

ответ

6

Он должен прочитать "on", не "yes"

if ($_SERVER['HTTPS'] == "on") { 
    echo "HTTPS"; 
} else { 
    echo "HTTP"; 
} 
3

Я хотел бы повторить переменную сервера [HTTPS]. В зависимости от сервера он может быть «включен» не «да».

1

Согласно http://php.net/manual/en/reserved.variables.server.php

«HTTPS» Установите на непустое значение, если сценарий был задан вопрос по протоколу HTTPS.

Но он также добавляет:

Note: Note that when using ISAPI with IIS, the value will be off if the request was not made through the HTTPS protocol. 

Итак, я хотел бы использовать другую логику:

<code> 
if (empty($_SERVER['HTTPS'])) { 
    echo 'http:'; 
} 
else if ($_SERVER['HTTPS'] == 'off') { 
    echo 'http:'; 
} 
else { 
    echo 'https:'; 
} 
</code> 

Таким образом, это не имеет значения, если это "на" или "да". Однако у меня нет среды для проверки этого на случай https. http работает в моем случае.

Смежные вопросы