php – HTTP主机头何时可以被定义?

前端之家收集整理的这篇文章主要介绍了php – HTTP主机头何时可以被定义?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
根据定义HTTP / 1.1的 RFC 2616,Host:头是强制性的.

A client MUST include a Host header field in all HTTP/1.1 request messages .

PHP manual意味着它可能是空的:

‘HTTP_HOST’: Contents of the Host: header from the current request,if there is one.

在这种情况下,这个头,因此$_SERVER [‘HTTP_HOST’]是空的?我的应用程序能否依赖于它的存在?

它可以在HTTP 1.0中为空.如果没有指定主机头,则虚拟主机根本无法使用,因此将使用Web服务器中的默认虚拟主机.

我刚刚测试过;在Nginx下的PHP中,$_SERVER [‘HTTP_HOST’]变量设置为虚拟主机的名称,在我的情况下为_.但这也取决于您在Nginx中的fastcgi_params配置.

在共享主机上,这并不重要,因为默认的vhost将被设置为托管公司的某些信息页面,因此您的脚本将不会运行.对于自己的服务器来说,请记住一件好事.

猜你在找的PHP相关文章