当我通过https访问网站时,为什么$ _SERVER未启用SSL?

时间:2018-03-08 18:16:10

标签: php https

print_r($_SERVER);

这就是它显示的内容

[SERVER_PORT] => 80

当我通过HTTPS协议访问网站网址时,为什么SERVER_PORT可能等于80?

1 个答案:

答案 0 :(得分:0)

您需要完全配置Apache服务器以使端口以更一致的方式反映端口。根据PHP文档:

  

注意:在Apache 2下,您必须设置UseCanonicalName = On,以及UseCanonicalPhysicalPort = On以获取物理(真实)端口,否则,此值可能是欺骗性的,它可能会或可能不会返回物理港口价值。在依赖于安全性的上下文中依赖此值是不安全的。

http://php.net/manual/en/reserved.variables.server.php