X-Accel-Redirect и базовая авторизация

Igor Sysoev is at rambler-co.ru
Tue Jan 31 15:51:21 MSK 2006


On Tue, 31 Jan 2006, Andrew Velikoredchanin wrote:

> Andrew Velikoredchanin пишет:
>> Igor Sysoev пишет:
>>> On Tue, 31 Jan 2006, Andrew Velikoredchanin wrote:
>>>
>>>> Я сейчас исследую возможность для того что-бы заменить процедуру
>>>> скачивания файлов с апача через скрипт на внутренний редирект с этого-же
>>>> скрипта на nginx.
>>>>
>>>> Т.к. у меня обрабатываются логи апача для сбора статистики по
>>>> залогиненным юзерам, теперь мне ее надо будет собирать по логам nginx.
>>>> Но я обнаружил что при Accel-Redirect в nginx не передается информация
>>>> об авторизации (т.е. в логе нет имени юзера).
>>>>
>>>> Подскажите, плиз, что можно сделать что-бы юзер и в логе nginx
>>>> присуствовал? Я так думаю, что какие-то хидеры вместе с
>>>> X-Accell-Redirect нужно передавать?
>>> В лог можно писать $remote_user, он берётся из заголовка
>>> "Authorization: Basic ...".
>>
>> Я немного неправильно сформулировал. У меня используется не базовая
>> авторизация, а своя по кукам. Есть модуль mod_perl в апаче, который
>> занимается ее проверкой и выставлением соответствующих внутренних
>> переменных апача в нужные значения (что-бы в логе был видел юзер). А вот
>> как это сделать с nginx я как-то и не представляю. В скрипте который
>> формирует X-Accell-Redirect имя юзера доступно (но именно имя юзера, а
>> не заголовок "Authorization:"). Как его можно передать nginx что-бы он
>> его воспринял? Вручную сформировать заголовок "Authorization:"?
>
> Я так понял что решения нет? Может через mod_perl/nginx можно что-то
> сделать (взять имя юзера из куков)?

Если имя достаётся из куки регулярным вырадением, то можно с помощью rewrite,
если более сложное, то нужно сделать переменную, а её обработчик на перле.


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





More information about the nginx-ru mailing list