eval module 1.0.1

Maxim Dounin mdounin at mdounin.ru
Fri Jun 26 16:35:05 MSD 2009


Hello!

On Fri, Jun 26, 2009 at 11:14:47AM +0200, Valery Kholodkov wrote:

> Maxim Dounin пишет:
>> Hello!
>>
>> On Fri, Jun 26, 2009 at 07:30:08AM +0400, Борис Долгов wrote:
>>
>>> proxy_method GET;
>>> proxy_pass_request_body off;
>>>
>>> Да, тоже недокументировано :(
>>
>> И кстати недостаточно, т.к. заголовки уйдут от оригинального запроса, в 
>> них будет Content-Length, и бекенд сойдёт с ума.
>
> Идея хорошая. Content-Length после создания подзапроса надо будет удалять.

И ещё будет смешно если бекенд ответит gzip'ом.

По хорошему для таких вещей надо делать

proxy_method GET;
proxy_pass_request_body off;
proxy_pass_request_headers off;

и добавлять proxy_set_header по необходимости.

> В остальном, по-умолчанию должен наблюдаться эффект этих двух директив,  
> поскольку в подзапросе метод заменяется на GET.

Ну я могу в очередной раз выразить удивление желанием делать 
всякие манипуляции за спиной пользователя - проще и понятнее было 
бы сделать указание uri'а подзапроса вместо блока с магией.  Так 
же, как это делается из ssi.  Но что называется о вкусах не 
спорят.

Maxim Dounin

>
>>
>> Maxim Dounin
>>
>>> 26 июня 2009 г. 3:29 пользователь Sergey Shepelev <temotor at gmail.com>написал:
>>>
>>>> Офигенно, Валерий, спасибо вам.
>>>>
>>>> У нас есть специальный сервис (на тредах), который долбится в базу для
>>>> авторизации клиента *и проксирует запрос* на другие внутренние
>>>> сервисы. С вашим модулем, похоже, работу проксирования можно
>>>> наконец-то поручить nginx.
>>>>
>>>> Только есть маленькая проблема. proxy_pass проксирует запрос, который
>>>> пришёл от клиента. А нужно составлять новый запрос. В частности, от
>>>> клиента может придти POST, а нужен GET. Урл-то можно изменить в
>>>> proxy_pass. А метод?
>>>>
>>>> 2009/6/26 Valery Kholodkov <valery+nginxru at grid.net.ru<valery%2Bnginxru at grid.net.ru>
>>>>> :
>>>>>
>>>>> Здравствуйте!
>>>>>
>>>>> Новый модель для преобразования ответа от проксированного сервера или
>>>>> memcached в значение одной или нескольких переменных.
>>>>>
>>>>> Возможное применение:
>>>>>  * хранение сессий в memcached
>>>>>  * нахождение узла или кластера, отвечающего за ресурс
>>>>>  * много других
>>>>>
>>>>> Подробности на этой странице:
>>>>>
>>>>> http://www.grid.net.ru/nginx/eval.ru.html
>>>>>
>>>>> Пишите если возникнут проблемы!
>>>>>
>>>>> Модуль разработан по заказу компании GG Network S.A. (gadu-gadu.pl).
>>>>>
>>>>> --
>>>>> Best regards,
>>>>> Valery Kholodkov
>>>>>
>>>>>
>>>
>>>
>>> -- 
>>> С уважением, Борис Долгов.
>>> icq 77556665
>>> e-mail boris at dolgov.name
>>
>
>
> -- 
> Best regards,
> Valery Kholodkov
>





More information about the nginx-ru mailing list