在php中设置响应状态有什么不同
标题(“HTTP / 1.0 404 Not Found”);
和
标题(“状态:404未找到”);
与客户端的观点有何不同(也就是浏览器或RESTful WS的客户端实现)。我明白第二个必须用CGI做点什么。
答案 0 :(得分:4)
HTTP/1.0 404 Not Found
是 HTTP响应代码,它允许客户端确定请求是否成功。
Status: 404 Not Found
只需设置名为Status
的额外标头字段,其值为404 Not Found
。它没有内在意义,就像设置header('Foo: Bar')
一样。这可能对某人意味着什么,但它是not officially specified what it should mean。 HTTP响应代码将是正常的200 OK。
通过FastCGI运行PHP时似乎有一种特殊情况。显然,使用此方法调用PHP时,无法直接设置HTTP/
状态。相反,您必须设置此非官方标头,在将其发送回客户端之前将转换为真正的HTTP/
代码(显然,当通过CGI调用PHP时,PHP可以如何与Web服务器通信)。在所有其他情况下,它只是按原样发送(没有任何意义),真正的HTTP响应代码将是200 OK。
这就是我至少从description in the manual收集的东西,我从来没有使用过这个。另外,如果你通过CGI运行PHP,你会感到疯狂,所以希望在这个时代没有人需要这个。 ; O)