在我的网站上,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错误页面)。 这是一个糟糕的方法吗?
答案 0 :(得分:3)
使用header
function发送正确的状态代码:
header($_SERVER['SERVER_PROTOCOL'].' 404 Not Found', true, 404);
然后,如果它是静态文件,您可以使用readfile
发送错误文档;如果是PHP文件,则可以使用include
发送错误文档。