我看到有人在做类似的事情:
<?php
header('HTTP/1.0 200 OK');
header('HTTP/1.1 200 OK');
?>
这样做的目的是什么?似乎第二个总是会覆盖第一个标题? 或者这是因为如果某些客户端不支持 http 1.1,那么他们仍然可以收到 1.0 header ?
最佳答案
这样做没有任何意义。只能向客户端发送一个 HTTP 状态行。
默认情况下无论如何都会发送 200 OK
,因此除非您要覆盖之前的状态行(这会很奇怪),否则这两行都是没有意义的。
如果您使用的是 PHP 5.4+,无论如何您都应该使用 http_response_code()
来设置状态码。将协议(protocol)实现留给网络服务器。
关于PHP 同时发送 http 1.0 和 1.1 header ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26718918/