2017-09-25 55 views
-1

当我使用header()函数重定向用户时,只传递第一个参数,会发送什么响应代码?什么是php头文件函数的默认响应码

我有header('Location: https://' . $_SERVER['HTTP_HOST']);在旧页面上设置了一段时间,现在我很好奇,如果该重定向可能已被浏览器缓存。

+0

'200'是默认的'OK'响应。 – aynber

+0

当你重定向他们如何?使用'Location:...'? –

+1

如果你使用头文件(“Location”你应该得到一个302.你可以在文档中阅读这个文件,或者你可以像写一个问题一样快速地测试它 – ADyson

回答

2

它将发送302(临时重定向),如果您发送Location标题,并且不另行指定。 From the manual

第二种特殊情况是“位置:”标题。除非已经设置了201或3xx状态码,否则它不仅会将此标题发送回浏览器,还会向浏览器返回REDIRECT(302)状态码。

编辑: 因此,要回答你的后续查询:不,这不应该被缓存。

0

有两种特殊情况的标题调用。第一种是以字符串“HTTP /”开头的字头(大小写不重要),它将用于确定要发送的HTTP状态码。例如,如果您已将Apache配置为使用PHP脚本来处理丢失文件的请求(使用ErrorDocument指令),则可能需要确保脚本生成正确的状态码。

了解更多详情,请http://php.net/manual/en/function.header.php