PHP导航到错误页面

时间:2009-10-25 20:21:22

标签: php redirect http-status-code-404

在我的网站上,website.com/downloads实际上是访问website.com/index.php?page=downloads(使用apache重写)。我有一个自定义404找不到错误页面集。如果我做website.com/dkfjf/fdf,它会转到404错误,但如果我做website.com/something,它会转到index.php?page = something,那么在我的index.php中,我怎么能在确定没有something页面后,让它导航到404错误?因为现在,我只是将我的404错误页面加载到主div(就像所有其他页面一样),但它不一致(例如,它仍然在地址栏中显示website.com/soemthing,还有其他问题),我只是想让它导航到404错误。我怎么能这样做?

编辑:这有效:

echo '<meta http-equiv="refresh" content="0; url = /error" />';

(mywebsite.com/error重写为index.php?page = error,这是我的404错误页面)。 这是一个糟糕的方法吗?

1 个答案:

答案 0 :(得分:3)

使用header function发送正确的状态代码:

header($_SERVER['SERVER_PROTOCOL'].' 404 Not Found', true, 404);

然后,如果它是静态文件,您可以使用readfile发送错误文档;如果是PHP文件,则可以使用include发送错误文档。