Nginx自定义PHP error_pages具有不同的头状态代码和正文内容

时间:2011-01-26 18:21:59

标签: php error-handling nginx

使用Nginx 0.8.54:我设置PHP错误页面为某些链接做重定向,为其他链接做404,并显示自定义HTML正文。 nginx的

server {
 error_page 404 = /err/error.php?error=404;
}

error.php

<?php
if( $_SERVER['REQUEST_URI'] == "/blah" ){
    header('Status: 301 Moved Permanently');
    header('location: http://localhost/ ');
}else
    header('Status: 404 Not Found');

echo 'This is a custom Error Page';
?>

Nginx没有任何问题进行重定向,但对于404自定义页面,Nginx发送404标头并显示默认的Nginx页面,而不是“这是一个自定义错误页面”文本。

1 个答案:

答案 0 :(得分:0)

您是否尝试过两次设置header('Status: 404 Not Found');? (例如,这已经是404错误页面)