On Sun, Nov 04, 2007 at 08:08:46PM +0200, Alex Vorona wrote:
> Oleg Motienko пишет:
> >Добрый день.
> >
> >Есть ли возможность с помощью nginx "обрезать" referer по определенным
> >условиям, например при наличии в referer определенной
> >последовательности символов?
> >
> >Аналогично и для юзерагент, надо некоторые из них менять на MSIE.
> >
> >
> через set переменные не меняются, видимо потому что являются
> переменными ngx_http_core_module и директива set реврайт-модуля не
> видит их как существующие, но в то же время и создать не может
> код
> set $http_user_agent "";
> вызывает ошибку
> [emerg] 12903#0: the duplicate "http_user_agent" variable in
> /etc/nginx/nginx.conf:66
set $ref $http_referer;
set $ua $http_user_agent;
if ($ref ~ ...) {
set $ref $1;
proxy_pass ...
}
if ($ua ~ ...) {
set $ua ...MSIE...;
proxy_pass ...
}
proxy_pass ...
proxy_set_header Refrerer $ref;
proxy_set_header User-Agent $ua;
Добавление proxy_pass в оба условия обязательно, потому современный
ngx_http_rewrite_module кошмарен.
--
Игорь Сысоев
http://sysoev.ru