PHP auto_prepend和http 404错误

时间:2012-12-01 15:48:23

标签: php

我有Apache和PHP设置,我正在使用.htaccess文件将文件auto_prepend到任何输出。

问题是当我想使用

输出404错误时
<?php header("HTTP/1.0 404 Not Found"); ?>

由于auto_prepended文件已经处理,它仍会输出标题。

.htaccess档案

php_value date.timezone 'Europe/London'
php_value auto_prepend_file load.php

load.php

<?php

    // Set the error reporting level (DEV)
    error_reporting(E_ALL);
    ini_set("display_errors", 1);

    // Load the configuration file
    include("config/config.php");

    session_start();

?>

因此,加载文件包含配置文件的include,以便在每个加载的页面上设置它。

所以目前我有一些页面提供了软404错误,而不是实际的404错误,所以如果没有返回数据,因为图像123实际上并不存在,所以我输出一个“这个图像不存在“所以这会导致谷歌或任何其他爬虫的问题,因为它可以继续从/ image / 123 .... / image / 12222222333333444444等...所以它实际上需要输出一个合适的404。

希望有人可以提供帮助。

1 个答案:

答案 0 :(得分:0)

我在PHP header 404 not working

找到了答案
<?php
header("HTTP/1.0 404 Not Found");
exit("<h1>Not Found</h1>
The requested URL " . $_SERVER["REQUEST_URI"] . " was not found on this server.
<hr>");
?>

这给出了正确的404输出。