On Tue, Apr 27, 2010 at 05:10:04PM +0400, -=HaRius=- wrote:
> location /404 - он на бекэнде.
>
> описал его явно :
>
> location / {
> proxy_pass
http://localhost:8080;
> proxy_redirect off;
> proxy_set_header Host $host;
> proxy_set_header X-Real-IP $remote_addr;
> proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
> client_max_body_size 500m;
> proxy_intercept_errors off;
> error_page 404 =200 /404;
> }
>
> location =/404 {
> proxy_pass
http://localhost:8080;
> proxy_redirect off;
> proxy_set_header Host $host;
> proxy_set_header X-Real-IP $remote_addr;
> proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
> }
>
> при детальном рассмотрении firebug'ом виден 404 код ошибки =\
>
> задача тривиальная там где переход по старой ссылке вернуть просто код 200,
> что бы поисковики не потерли ссылки, бекэнд правильно показывает страницу по
> 404, но с кодом 404, нужно что бы нгинкс подменил код 404 возращенный
> бекэндом
> на 200
proxy_intercept_errors on;