如何在PHP中生成404错误?

时间:2013-12-13 20:42:23

标签: php .htaccess

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

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

<?
   if (notRegistered($_GET['user'])) {
        // Throw 404 Error
   }
?>

提前致谢。

1 个答案:

答案 0 :(得分:4)

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

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

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

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

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