ПРОЕКТЫ 


  АРХИВ 


Apache-Talk @lexa.ru 

Inet-Admins @info.east.ru 

Filmscanners @halftone.co.uk 

Security-alerts @yandex-team.ru 

nginx-ru @sysoev.ru 


  СТАТЬИ 


  ПЕРСОНАЛЬНОЕ 


  ПРОГРАММЫ 



ПИШИТЕ
ПИСЬМА












     АРХИВ :: nginx-ru
Nginx-ru mailing list archive (nginx-ru@sysoev.ru)

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Статика и rewrite



On Sun, Mar 15, 2009 at 07:33:14PM +0300, Вячеслав (СТYDИЯ АРТ-DИЗАЙН) wrote:

> В результате получилась следующая конфигурация:
> 
>     server {
>         listen 80; 
>         server_name img.site.ru www.img.site.ru;
> 
>         expires max;
>         add_header Cache-Control public;
>         access_log off;
> 
>         root /var/www/vhosts/site.ru/subdomains/img/httpdocs;
>         
>         location ~* ^/i/rating/(.+)\.png$ {
>              error_page 404 = http://www.site.ru/img.php?rating=$1;
>         }
>         
>         location ~* \.(bmp|gif|jpg|jpeg|ico|png|swf|tiff)$ {
>         }     
>     }
> 
> При отсутствующем файле, скрипту не передается параметр $1, т.е.
> http://www.site.ru/img.php?rating=
> 
> Я так понимаю что $1 работает в error_page только начиная с 0.7.41?

Да.

> Использую сейчас nginx/0.6.35, стоит ли перейти на последнюю версию?

Можно переходить.

> Большое спасибо за ответы!
> 
> --
> С уважением, Вячеслав
>  
> 
> -----Original Message-----
> From: owner-nginx-ru@xxxxxxxxx [mailto:owner-nginx-ru@xxxxxxxxx] On
> Behalf Of Igor Sysoev
> Sent: Sunday, March 15, 2009 6:09 PM
> To: nginx-ru@xxxxxxxxx
> Subject: Re: Статика и rewrite
> 
> On Sun, Mar 15, 2009 at 05:54:55PM +0300, Igor Sysoev wrote:
> 
> > On Sun, Mar 15, 2009 at 04:01:31PM +0300, Вячеслав (СТYDИЯ АРТ-DИЗАЙН)
> wrote:
> > 
> > > Добрый день, сообщество nginx-ru!
> > > Я новичек, установил nginx как фронт-енд к apache2.
> > >  
> > > Сделал отдельный домен img.site.ru под раздачу картинок через nginx.
> > > Дополнительно nginx должен проверять если по адресу
> > > img.site.ru/i/rating/*.png файл, то он отдает его пользователю, если
> нет
> > > отправляет на формирование скрипту http
> > > <http://www.site.ru/img.php?rating=*>
> ://www.site.ru/img.php?rating=*
> > >  
> > > Конфигурация:
> > >  
> > >     server {
> > >         listen 80; 
> > >         server_name img.site.ru www.img.site.ru;
> > >  
> > >         expires max;
> > >         add_header Cache-Control public;
> > >         access_log off;
> > >  
> > >         location ~* ^.+\.(bmp|gif|jpg|jpeg|ico|png|swf|tiff)$ {
> > >             root /var/www/vhosts/site.ru/subdomains/img/httpdocs;
> > >             if (!-f $document_root${uri}) {
> > >                 rewrite ^/i/rating/(.*)\.png$
> > > http://www.site.ru/img.php?rating=$1 last;
> > >                 break;
> > >             }
> > >         }
> > >     }
> > >  
> > > Верна ли конфигурация? Я почему-то в ней сомневаюсь.
> > 
> > Для 0.7.41:
> > 
> >         root /var/www/vhosts/site.ru/subdomains/img/httpdocs;
> > 
> >         location ~* ^/i/rating/(.+)\.png$ {
> >              error_page       /img.php?rating=$1;
> 
> -              error_page       /img.php?rating=$1;
> +              error_page 404 = /img.php?rating=$1;
> 
> >         }
> > 
> >         location ~* \.(bmp|gif|jpg|jpeg|ico|png|swf|tiff)$ {
> >         }
> > 
> >         location ~* \.php$ {
> >              proxy_pass  ...;
> >         }
> 
> 
> -- 
> Игорь Сысоев
> http://sysoev.ru

-- 
Игорь Сысоев
http://sysoev.ru



 




Copyright © Lexa Software, 1996-2009.