遵循我的nginx规则:
error_page 404 /page.php;
遵循page.php的代码:
<?php
echo 1;
header('location: ../page2.php');
?>
404的情况下的输出是1
,页面没有重定向到page2.php,我曾尝试删除echo 1;
但输出相同。怎么解决?
答案 0 :(得分:3)
如果您打开PHP错误或查看错误日志,可能会收到错误:
警告:无法修改标头信息 - 已发送的标头 (输出从文件:行开始)
在向浏览器输出任何内容之前,必须先调用发送/修改HTTP标头的函数。
您在标题函数之前的回显停止标题函数工作,即您的页面没有重定向。
您最好使用echo
向用户显示所需的404消息,然后使用其他方法将用户移至其他页面(Javascript)