Re: Не получается прикрыть 404 от аплинка своим (proxy_intercept_errors)

Maxim Dounin mdounin на mdounin.ru
Пн Мар 28 15:33:20 MSD 2011


Hello!

On Mon, Mar 28, 2011 at 03:12:45PM +0400, Igor Sysoev wrote:

> On Mon, Mar 28, 2011 at 03:02:40PM +0400, Виталий Ф. wrote:
> >  #динамику будем брать с frontend и если отсутствует, то скачивать
> >         location ~*
> > ^.+\.(jpg|jpeg|gif|gz|zip|flv|rar|wmv|avi|css|swf|png|htc|ico|mpeg|mpg|txt|mp3|mov|js)$
> > {
> >                 expires 1d;
> >                 error_page 404 = @fetch;
> >         }
> >         location = /404.html {
> >                 root /var/www/site1/;
> >         }
> >         #кэшируем статику на себя
> >         location @fetch {
> >                 proxy_pass $real_web;
> >                 proxy_store on;
> >                 proxy_temp_path /var/www/site1/_fetch;
> >                 proxy_set_header Host $host;
> >                 proxy_set_header If-Modified-Since "";
> > 
> >                 error_page 404 = /404.html;
> >                 proxy_intercept_errors on;
> 
> +                 recursive_error_pages  on;

Только не тут, а в том location'е, где error_page срабатывает в 
первый раз, т.е. в "location ~*  ^.+\.(jpg|jpeg|gif|gz|zip|...".

> > 
> >         }
> > 
> > 404.html нормально отдается по прямому заходу. Хочется не отдавать на
> > запросы по картинкам получившие 404 здоровый сео-404 (вместо него - мелкий
> > 404).
> 
> http://sysoev.ru/nginx/docs/http/ngx_http_core_module.html#recursive_error_pages

Maxim Dounin



Подробная информация о списке рассылки nginx-ru