php header实现404
设置HTTP 404状态码
在PHP中,可以使用header()函数发送HTTP状态码。要返回404错误,需发送HTTP/1.0 404 Not Found或HTTP/1.1 404 Not Found头部。示例代码如下:
header("HTTP/1.0 404 Not Found");
自定义404页面内容
发送404状态码后,通常需要输出自定义的错误页面内容。可以在发送头部后直接输出HTML:
header("HTTP/1.0 404 Not Found");
echo '<!DOCTYPE html>
<html>
<head>
<title>404 Not Found</title>
</head>
<body>
<h1>404 Not Found</h1>
<p>The page you requested could not be found.</p>
</body>
</html>';
使用exit或die终止脚本
为确保后续代码不会意外输出内容,建议在发送404响应后立即终止脚本执行:
header("HTTP/1.0 404 Not Found");
exit('<h1>404 Not Found</h1>');
结合.htaccess重定向
对于更完整的404处理,可以在.htaccess中配置自定义错误文档,同时在PHP中设置状态码:
ErrorDocument 404 /error.php
然后在error.php中:
header("HTTP/1.0 404 Not Found");
// 自定义404页面内容
检测当前状态码
在某些情况下可能需要检查当前响应状态。虽然PHP没有直接获取已发送状态码的函数,但可通过以下方式记录:
http_response_code(404);
// 之后可以通过http_response_code()获取当前状态
$currentCode = http_response_code();






