当我使用header()
函数重定向用户时,只传递第一个参数,将发送什么响应代码?
我在旧网页上设置了header('Location: https://' . $_SERVER['HTTP_HOST']);
一段时间,现在我很好奇是否可能已经被浏览器缓存了重定向。
答案 0 :(得分:2)
如果您发送Location
标头并且未另行指定,它将发送302(临时重定向)。 From the manual:
第二个特例是“Location:”标题。它不仅将此标头发送回浏览器,而且还向浏览器返回REDIRECT(302)状态代码,除非已经设置了201或3xx状态代码。
修改强> 所以,要回答你的后续查询:不,这不应该被缓存。
答案 1 :(得分:0)
200
404
500
答案 2 :(得分:0)
有两种特殊情况的标题调用。第一个是以字符串" HTTP /"开头的标题。 (情况并不重要),将用于确定要发送的HTTP状态代码。例如,如果您已将Apache配置为使用PHP脚本来处理丢失文件的请求(使用ErrorDocument指令),则可能需要确保脚本生成正确的状态代码。
有关详情,请查看http://php.net/manual/en/function.header.php