location ~ and proxy_pass

Igor Sysoev is at rambler-co.ru
Thu Mar 10 10:35:42 MSK 2005


On Wed, 9 Mar 2005, Anton V. Yuzhaninov wrote:

> Здравствуйте Igor,
>
> 9 марта 2005 г., 19:12:22, Вы писали:
>
> IS> proxy_pass не работает для location, заданных регулярным выражением.
>
> IS> В общем случае есть два способа отображения uri на файловую систему/другой
> IS> сервер - root и alias. root добавляет uri к root, а alias заменяет часть
> IS> uri, соответствующую location, на alias. proxy_pass - это alias-отображение,
> IS> а fastcgi_pass - root-отображение. alias вообще гибче, но нужно больше
> IS> писать. В случае использования регулярного выражения для alias-отображения
> IS> нужно как-то выделять заменяемую часть. В принципе, можно сделать, чтобы
> IS> при использовании регулярного выражения proxy_pass приобретало характер
> IS> root-отображения.
>
> А какой тогда наименее кривой способ проксировать на бэкенд только
> динамику? Через rewrite?

Пока через rewrite нельзя, но планируется.

> Структура сайта заранее неизвестна. Ориентироваться можно
> только на типы файлов. Пока сделал так:
>
> location / {
>           proxy_pass  http://127.0.0.1/;
>           ................
>        }
> location ~* \.(html|txt|jpg|jpeg|gif|mpg|mpeg|avi|png|css|swf|ico|zip|rar)$ {
>           root   /usr/local/www/public_html;
>        }
>
> В принципе ничего страшного, что проксироваться будет немного больше запросов
> чем надо - root у апача и nginx один и тот же.

Да, можно так. В 0.1.25 при использовании регулярного выражения proxy_pass
будет работать как root-отображение.


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





More information about the nginx-ru mailing list