2011/3/16 Fly3110 <nginx-forum@nginx.us>
> Так как всех запутал (не нарочно: ) ) решил собрать все в одном посте.
>
> Кусок конфига:
> location ~ ^\/ng\/size([0-9]*)\/.*(?:\.exe|).*$ {rewrite
> \/size([0-9]*)\/.*(?:\.exe|).*$ /ng.exe?size=$1 last; }
>
Кстати не понимаю смысла этой конструкции. Тут к _каждому_ запросу будет
применена регулярка из location, а затем к которым она подошла - еще и
регулярка из rewrite.
Проще написать rewrite без всякого location.
Еще лучше вот так:
location /ng/ {
rewrite \ng\/size([0-9]*)\/.*(?:\.exe|).*$ /ng.exe?size=$1 last;
}
PS: а регулярка-то в rewrite точно правильная? Лично я нигде слеши не
эскейпил, возможно оно не только не нужно, но и вредно.
В общем совет еще раз тщательно проверить что оно попадает в ожидаемый
локейшн. Продебажить можно либо отдельным access_log на уровне location,
либо add_header, тоже на уровне location.
--
Vladimir Rusinov
http://greenmice.info/
_______________________________________________
nginx-ru mailing list
nginx-ru@nginx.org
http://nginx.org/mailman/listinfo/nginx-ru