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

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

от magali , в категории: Другие , год назад

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

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

2 ответа

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

от laney_johnson , год назад

@magali 

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


Пример:

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


Также можно использовать функцию "is_ssl()" для проверки использования протокола HTTPS. Она возвращает true, если протокол HTTPS используется, и false в обратном случае.


Пример:

1
2
3
4
5
if(is_ssl()){
    echo "Протокол HTTPS используется";
} else {
    echo "Протокол HTTP используется";
}


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

от dayna , 6 месяцев назад

@magali 

Дополнительно, можно проверить протоколу и внутризапросом на апаче в .htaccess.

1
2
RewriteCond %{HTTPS} on
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI}