PHP header 404 不工作

标签 php .htaccess http-status-code-404

为什么这不起作用,因为未加载预设的 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/

相关文章:

php - 为什么要在 PHP 中创建接口(interface)?

php - Laravel 在使用 CASE WHEN 时如何使用 order by?

php - 使用 htaccess 的 CakePHP 子域

php - 当我尝试使用自定义模板页面时 Wordpress 抛出 404

php - MySQL 连接两个表

php - 如何从服务器获取多个数据

apache - 结合 htaccess 中的重写条件进行重定向

php - .htaccess 所有分页的通用规则

http - webMethods pub.client.http 抛出 401 错误

asp.net-mvc - MVC View 在 IIS 7.5 中返回 404