【发布时间】:2023-04-11 00:51:01
【问题描述】:
我使用 .htaccess RewriteRules 将 url 传递给 index.php。如果在数据库中找不到指定的页面名称,我希望我的脚本抛出正确的 404 响应。
我尝试实现的方法是:
header($_SERVER["SERVER_PROTOCOL"] . " 404 Not Found");
在我的浏览器中分析 HTTP 响应,响应返回正常:
HTTP/1.1 404 Not Found
但是,我希望能够输出一个友好的 404 页面,但是 header() 函数之后的任何内容都会被忽略,以及之前的任何内容......好吧......那太愚蠢了。
谁能建议如何从脚本中输出 404 错误消息?
谢谢。
【问题讨论】:
-
为什么不在 header() 之后输出友好的错误页面,例如使用 echo?根据我的经验,这种方法是有效的。
标签: php http http-headers http-status-code-404 error-code