PHP 404 错误规避:揭露隐藏的通信缺陷
尝试使用 PHP 发送 404 错误时,您可能会遇到意想不到的结果: 空白页。要了解发生这种情况的原因,让我们研究一下您提供的代码:
if (strstr($_SERVER['REQUEST_URI'],'index.php')) { header('HTTP/1.0 404 Not Found'); }
虽然技术上是正确的,但此代码仅将 HTTP 标头设置为“404 Not Found”。然而,在拦截此标头之前,Web 服务器已经开始处理 PHP 页面。
404 错误的正常流程如下所示:
但是,使用您的 PHP 代码:
因此,尽管有 404 标头,浏览器仍然接收 PHP 输出并呈现空白页面。要解决此问题,PHP 还必须提供 404 错误页面。例如,您可以使用以下代码:
header('HTTP/1.0 404 Not Found'); echo '<html><head><title>404 Not Found</title></head><body><h1>404 Error</h1></body></html>';
以上是为什么我的 PHP 404 错误会导致空白页?的详细内容。更多信息请关注PHP中文网其他相关文章!