如何知道php脚本是HTTPS而不是HTTP中的请求?
我已经检查了所有$\u服务器成员变量,仍然不知道如何检查如何知道php脚本是HTTPS而不是HTTP中的请求?,php,Php,我已经检查了所有$\u服务器成员变量,仍然不知道如何检查 $_SERVER['HTTPS'] == 'on' upd:和$\u服务器['SERVER\u PROTOCOL']或$\u服务器['SERVER\u PORT']==443//80用于http$\u服务器['HTTPS']-from 如果通过HTTPS协议查询脚本,则设置为非空值 注意:注意,当将ISAPI与IIS一起使用时,如果请求不是通过HTTPS协议发出的,则该值将关闭 如果您打印了\u r($\u服务器); =>您可以看到这一
$_SERVER['HTTPS'] == 'on'
upd:和
$\u服务器['SERVER\u PROTOCOL']
或$\u服务器['SERVER\u PORT']==443//80用于http
$\u服务器['HTTPS']
-from
如果通过HTTPS协议查询脚本,则设置为非空值
注意:注意,当将ISAPI与IIS一起使用时,如果请求不是通过HTTPS协议发出的,则该值将关闭
如果您打印了\u r($\u服务器);
=>您可以看到这一点。[HTTPS]=>在上是否有时间
!='关闭“
和!=”在“
”上?是。IIS与ISAPI。看莫里斯的回答。啊,我的错。“这句话实际上是正确的答案,但不是针对你的问题,”嘎克说。我不知道还有别的案子。但是,正如Mauris所写,IIS在使用ISAPI时将值设置为“off”,这就是为什么需要条件的第二部分。我的$u服务器中没有这个变量,为什么?
if (isset($_SERVER['HTTPS']) && $_SERVER['HTTPS'] != 'off')
// do your stuff here...