2011-01-26 8 views
2

Nginxを使用して0.8.54:いくつかのリンクではリダイレクトを行い、他のものでは404を設定してカスタムHTML本体を表示します。 nginxのNginxのカスタムPHP error_pagesとヘッダのステータスコードと本文の内容が異なる

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のページを表示する代わりに、「これはありますカスタムエラーページ 'テキスト。

答えて

0

header('Status: 404 Not Found');を2回設定しないとしましたか? (たとえば、これは既に404エラーページです)

+0

"error_page 404 = /err/error.php?error=404;"ステータスコードを設定しない – gadelkareem

関連する問題