nginx 0.7.65
[code]
error_page 404 /404.php;
location / {
fastcgi_intercept_errors on;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME /home/scen/domains/screenwriter.ru/p
include fastcgi_params;
}
[/code]
В скрипте 404.php ошибки особым образом логируются и выводится оформленное сообщение об ошибке. При обращении к несуществующим файлам всё работает правильно.
Иногда нужно из php-скрипта вернуть ошибку 404 и пояснение ("статья удалена" и т.п.). Но если в php-скрипте поставить 404-й заголовок
[code]
header("HTTP/1.0 404 Not Found");
[/code]
то nginx вместо моего текста выдает стандартную белую страницу "404 Not Found nginx".
Пробовал поставить recursive_error_pages on; , вместо 404 ошибки nginx стал ругаться 500.
Как правильно отдать клиенту 404-ю ошибку из php-скрипта?