0
我敢肯定,這是不可能的,我需要在login.php if $_GET['reason']
isset上設置標頭,但有人可以澄清,我不能設置響應代碼,然後改變位置?PHP自定義標頭重定向
header('HTTP/1.1 403 Forbidden');
header("Location: http://domain.com/login.php?reason=ipbanned");
我敢肯定,這是不可能的,我需要在login.php if $_GET['reason']
isset上設置標頭,但有人可以澄清,我不能設置響應代碼,然後改變位置?PHP自定義標頭重定向
header('HTTP/1.1 403 Forbidden');
header("Location: http://domain.com/login.php?reason=ipbanned");
對,這是不可能的。 「位置」標題將HTTP響應代碼設置爲302 Found
(或另一個3xx重定向代碼),並且一次不能發送兩個響應代碼。
更新:
正確的方法做你想要的是發送禁止頭的重定向頁面,即在login.php
如果$_GET['readon']=='ipbanned'
,而不是在重定向頁。
如果您未指定響應代碼,則默認值爲302.如果您自己設置響應代碼,則會覆蓋此值。 – 2013-02-28 11:01:34
感謝您的更正@Matt,我更新了答案 – 2013-02-28 11:02:23
所以,我可以設置403響應代碼並在同一頁面上重定向? – amof 2013-02-28 11:05:06