Обнаружение SSL С помощью PHP [дубликат]
Возможный Дубликат:
Как Узнать, Используете Ли Вы HTTPS Без $_SERVER['HTTPS']
Я искал в Интернете способы определить, использует ли сервер HTTPS-соединение, но, похоже, ни на одном сайте не было всех ответов (и некоторых других). Каковы именно все способы определить, использует ли сервер HTTPS-соединение с PHP? Мне нужно знать несколько способов обнаружения SSL, так как некоторые из моих скриптов распространяются и различные серверы обрабатывают вещи по-разному.
2 answers
$_SERVER['HTTPS']
Установите непустое значение, если скрипт был запрошен по протоколу HTTPS.
Примечание: Обратите внимание, что при использовании ISAPI с IIS значение будет выключено, если запрос не был сделан по протоколу HTTPS.
Следовательно, этого будет достаточно:
if (!empty($_SERVER['HTTPS']) && $_SERVER['HTTPS'] != 'off') {
// SSL connection
}
Ядро WordPress is_ssl() функция также добавляет проверку порта сервера:
function is_ssl() {
if ( isset($_SERVER['HTTPS']) ) {
if ( 'on' == strtolower($_SERVER['HTTPS']) )
return true;
if ( '1' == $_SERVER['HTTPS'] )
return true;
} elseif ( isset($_SERVER['SERVER_PORT']) && ( '443' == $_SERVER['SERVER_PORT'] ) ) {
return true;
}
return false;
}