Re: Не могу заставить regexp реагировать на символ "?"

Роман Москвитин nefer05 at gmail.com
Mon Jan 27 08:36:13 UTC 2014


Все верно оно делает. В запросе НЕТ знаков вопроса. Ибо это разделитель
между строкой запроса и аргументами.


2014-01-27 foboss <nginx-forum at nginx.us>

> Добрый день!
>
> Пытаюсь запустить правило:
>  rewrite ^([^.\?]*[^/])$ $1/ permanent;
>
> Оно должно добавлять "/" в конец запроса в случае, если в нем не содержится
> "." или "?" и оно не оканчивается на "/"
>
> Nginx отрабатывает только "." и "/":
> * qwerty -> qwerty/
> * qwe.rty -> qwe.rty
> * qwe?rty -> qwe/?rty !!!
>
> В https://www.debuggex.com/ условие "^([^.\?]*[^/])$" работает как
> ожидается:
> * qwerty - найден
> * qwe.rty - не найден
> * qwe?rty - не найден
>
> Подскажите, как составить regexp правильно?
>
> Posted at Nginx Forum:
> http://forum.nginx.org/read.php?21,246849,246849#msg-246849
>
> _______________________________________________
> nginx-ru mailing list
> nginx-ru at nginx.org
> http://mailman.nginx.org/mailman/listinfo/nginx-ru
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mailman.nginx.org/pipermail/nginx-ru/attachments/20140127/36a7c136/attachment.html>


Подробная информация о списке рассылки nginx-ru