Проблема с 404 и fastcgi

Andrei Nigmatulin anight at monamour.ru
Mon Aug 29 13:13:08 MSD 2005


On Friday 26 August 2005 16:38, Igor Sysoev wrote:
>
> Судя по логу, дело вот в чём. Значение переменной $fastcgi_script_name
> кэшируется после первого определения. Для запроса "/non-existent/"
> $fastcgi_script_name равна /non-existent/index.phtml. На этот запрос
> fastcgi возвращает 404. error_page перехватывает ошибку и делает опять
> запрос к fastcgi. Но так как $fastcgi_script_name закэшировано, то
> PATH_TRANSLATED опять будет равен .../non-existent/index.phtml и
> fastcgi опять возврашает ошибку 404. Она уже не перенаправляется
> на error_page, а отдаётся, как есть.
>
> Чтобы избежать такой ситуации, нужно описать отдельный location для
> /404.phtml и указать там
>
> fastcgi_param   PATH_TRANSLATED  $document_root/404.phtml;
> или
> fastcgi_param   PATH_TRANSLATED  /path/to/fastcgi/404.phtml;

Спасибо, так работает!!

Однако, если это все-таки фича а не бага, наверное, стоит ее упомянуть в 
документации :-)

-- 
Andrei Nigmatulin
GPG PUB KEY 6449830D

No Microsoft products were used in any way
for the creation of this message. If you are
using a Microsoft product to view it, BEWARE!
I'm not responsible for any harm you might
encounter as a result.


More information about the nginx-ru mailing list