А-ля rewrite
Andrew Velikoredchanin
andrew at rodtext.ru
Tue Dec 21 09:55:41 MSK 2004
Igor Sysoev пишет:
> On Mon, 20 Dec 2004, Andrew Velikoredchanin wrote:
>
>
>>Igor Sysoev пишет:
>>
>>>On Mon, 20 Dec 2004, Andrew Velikoredchanin wrote:
>>>
>>>
>>>
>>>>Цель - перенаправить определенный урл через фронтэнд nginx на скрипт на
>>>>бэкэнде. Причем вот таким образом - /prefix/la-la-la/([0-9]+)/la-la-la
>>>>-> /script.cgi?id=$1. Т.е. часть исходного урл-а должна
>>>>преобразовываться в параметр вызова скрипта. И все это в режиме proxy.
>>>>На nginx это возможно?
>>>>
>>>>В apache я для этого использую вот такое правило:
>>>>RewriteRule ^[0-9]+/[^/]+/[0-9]+/([0-9]+)/.*$ /script.cgi?id=$1
>>>
>>>
>>>Нет, сейчас rewrite работает только для uri без аргументов.
>>
>>Вроде получилось обойти.
>>Сделал вот так:
>>
>>location ~* ^/nfiles/[0-9]+/[^/]+/[0-9]+/([0-9]+)/.*$ {
>> proxy_pass http://216.240.137.136:88/show-file.fcgi?;
>> ...
>> proxy_set_x_url on;
>> ...
>>}
>>
>>И прямо из скрипта анализирую HTTP_X_URL.
>
>
> location c регулярным выраежнием и proxy_pass не должны работать.
Но работает. Параметр конечно не определяется, но переход на скрипт
бэкенда идет.
Не убирай, пожалуста, эту функциональность в будущих версиях.
More information about the nginx-ru
mailing list