为什么这不起作用,因为未加载预设的 404 页面:
header("HTTP/1.0 404 Not Found");
exit;
.htaccess
设置了 ErrorDocument 404/404.html
指令。
谢谢。
最佳答案
不幸的是,我最近在处理 PHP 项目时遇到了同样的问题。
发送 header 本质上只是一条“状态消息”,不会使浏览器或服务器显示特定页面(尽管我相信某些旧版本的 IE 可能会显示其默认的 404 页面). 这意味着您需要在脚本中创建自己的 404 错误消息,因为 .htaccess 错误处理将不起作用。
我的建议是使用类似的东西
header("HTTP/1.0 404 Not Found");
include('./404.html');
exit;
我知道这可能看起来很愚蠢,但到目前为止,这是我发现的唯一可行的方法。
关于PHP header 404 不工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5914120/