On Wednesday 18 July 2012 20:17:56 X-Thief wrote:
[...]
> Если qwe=1234 я могу поймать так:
> if ($args ~* "qwe=[0-9]") {
> тут что-то;
> }
> то два параметра у меня уже не
> получается сделать.
Это не правильно. Правильно:
if ($arg_qwe ~ "^\d+$") {
...
}
> Вот что я пытаюсь:
>
> if ($args ~* "test=test2&qwe=[0-9]") {
> тут что-то;
> }
>
> То "тут что-то;" не работает
>
> Как правильно составить выражение с
> двумя гет параметрами?
if ($arg_qwe ~ "^\d+$") {
set $test 1;
}
if ($arg_test = test2) {
set $test "1$test";
}
if ($test = 11) {
...
}
Но если непременно хочется сделать одной регуляркой, то:
if ($args ~* "(?=.*(?:^|&)qwe=\d+(?:$|&))(?=.*(?:^|&)test=test2(?:$|&))") {
...
}
--
Валентин
_______________________________________________
nginx-ru mailing list
nginx-ru@xxxxxxxxx
http://mailman.nginx.org/mailman/listinfo/nginx-ru