尽管工作正常,为什么我的所有页面都返回404标题?

时间:2015-06-04 23:47:10

标签: php url-rewriting http-headers front-controller

我网站上的所有网页都运行正常。但是他们会使用404标题发送。

我有一个使用前端控制器模式的PHP网站。 .htaccess具有将页面名称请求作为URL参数传递的标准代码:

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.+) index.php?filename=$1

index.php中,我抓住该网址参数并以这种方式使用它:

$_pagename = $_GET['filename'];
$content = "pages/" . $_pagename . ".php";
if (!file_exists($content)) {
    header('HTTP/1.0 404 Not Found');
    $content = "pages/404.php";
} else {
    header('HTTP/1.0 202 Accepted');
}

请参阅,我甚至手动给它一个202标题。 (这不应该是必要的!)

一切似乎都运转正常。正确加载$content,不正确的页面正确传递404。唯一奇怪的是所有页面都有404标题!可能导致这种情况的原因是什么?

0 个答案:

没有答案