如何在 PHP 中生成 404 错误?

Joa*_*n O -1 php .htaccess

我想知道是否有办法在 PHP 中模拟 404 错误。例如,我有这个 URL:www.mydomain.com/user/[Username]它重定向到 /profile.php?user=[username]。如果用户名未注册,我希望服务器显示我的 404 错误页面。

[PHP]这是一些示例代码:

<?
   if (notRegistered($_GET['user'])) {
        // Throw 404 Error
   }
?>
Run Code Online (Sandbox Code Playgroud)

提前致谢。

hek*_*mgl 5

HTTP 通过标头报告状态代码。使用header()PHP中的函数设置状态码:

if (notRegistered($_GET['user'])) {
     header($_SERVER['SERVER_PROTOCOL'] . ' 404 Not Found');
     exit(1);
}
Run Code Online (Sandbox Code Playgroud)

此外,您可能希望向浏览器发送错误页面:

if (notRegistered($_GET['user'])) {
     header($_SERVER['SERVER_PROTOCOL'] . ' 404 Not Found');
     readfile('path/to/error404.html');
     exit(1);
}
Run Code Online (Sandbox Code Playgroud)

$_SERVER\['SERVER_PROTOCOL'\]将包含HTTP/1.0HTTP/1.1