Как определить протокол: https или http в php?

Пользователь

от christine , в категории: PHP , 7 месяцев назад

Как определить протокол: https или http в php?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

1 ответ

Пользователь

от bart , 7 месяцев назад

@christine 

В PHP можно определить протокол запроса, используя глобальную переменную $_SERVER['HTTPS']. Если значение $_SERVER['HTTPS'] равно 'on', то запрос был выполнен с использованием протокола HTTPS, в противном случае, если значение равно 'off' или не задано, запрос был выполнен с использованием протокола HTTP.


Пример:

1
2
3
4
5
if(isset($_SERVER['HTTPS']) && $_SERVER['HTTPS'] === 'on'){
    echo "Протокол запроса: HTTPS";
} else {
    echo "Протокол запроса: HTTP";
}


Также можно использовать $_SERVER['REQUEST_SCHEME']. Если значение $_SERVER['REQUEST_SCHEME'] равно 'https', то запрос был выполнен с использованием протокола HTTPS, в противном случае, если значение равно 'http', запрос был выполнен с использованием протокола HTTP.


Пример:

1
2
3
4
5
if($_SERVER['REQUEST_SCHEME'] === 'https'){
    echo "Протокол запроса: HTTPS";
} else {
    echo "Протокол запроса: HTTP";
}