首页 > 后端开发 > php教程 > 为什么我的 PHP 应用程序显示空白页面而不是 404 错误?

为什么我的 PHP 应用程序显示空白页面而不是 404 错误?

Susan Sarandon
发布: 2024-11-12 03:33:02
原创
958 人浏览过

Why Does My PHP App Show a Blank Page Instead of a 404 Error?

PHP 404 错误:了解最后一英里差距

尽管遵循看似正确的代码,为什么您的 PHP 应用程序无法显示 404错误并显示一个空白页面?

提供的代码可确保发送 404 错误标头。但是,它无法解释 Web 服务器与 PHP 处理响应方式的关键区别。

Web 服务器处理

通常,Web 服务器处理请求并且,如果找不到 URI 请求的文件,它会发送 404 标头并显示自定义 404 错误页面。

PHP 拦截

当 Web 服务器将请求委托给 PHP 页面,PHP 脚本负责生成标头和响应正文。这意味着尽管 PHP 发送了 404 标头,但 Web 服务器已经承诺显示 PHP 页面而不是标准 404 页面。

移交给 PHP

因此,PHP 脚本有效地接管了处理 404 错误的责任,这带来了两个挑战:

  • 缺少 404 页面: PHP 脚本缺少必要的配置重定向到自定义 404 错误页面。
  • 输出干扰: PHP 脚本生成的任何输出都会覆盖 404 页面内容,导致显示空白页面而不是错误

解决方案

要解决此问题,您必须显式处理 404 情况并自行输出错误消息。以下代码提供了示例:

if (strstr($_SERVER['REQUEST_URI'],'index.php')) {
    header('HTTP/1.0 404 Not Found');
    echo '<h1>404 Not Found</h1>';
    exit;
}
登录后复制

以上是为什么我的 PHP 应用程序显示空白页面而不是 404 错误?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板