我看到某个地方的人做这样的事情:PHP同时发送HTTP 1.0和1.1头
<?php
header('HTTP/1.0 200 OK');
header('HTTP/1.1 200 OK');
?>
什么是这样做的目的是什么?似乎第二个将总是覆盖第一个头? 或者是因为如果有些客户端不支持http 1.1,所以他们仍然可以收到1.0头文件?
我看到某个地方的人做这样的事情:PHP同时发送HTTP 1.0和1.1头
<?php
header('HTTP/1.0 200 OK');
header('HTTP/1.1 200 OK');
?>
什么是这样做的目的是什么?似乎第二个将总是覆盖第一个头? 或者是因为如果有些客户端不支持http 1.1,所以他们仍然可以收到1.0头文件?
这是没有目的的。只有一个HTTP状态行可以发送到客户端。
无论如何,默认是发送200 OK
,所以除非你覆盖以前的状态行(这很奇怪),那么两行都是毫无意义的。
如果您使用PHP 5.4+,则应该使用http_response_code()
来设置状态码。将协议实现留给Web服务器。
我想不出有什么好的理由来做到这一点。如果客户不支持本世纪的HTTP 1.1,那么在网络上很少会有效。 – Quentin 2014-11-03 17:17:44
你介意向我们展示你在哪里找到的? – Brad 2014-11-03 17:19:02