nginx rewrite ?&

Vadim Lazovskiy vadim.lazovskiy at gmail.com
Thu Apr 4 09:03:23 UTC 2013


Здравствуйте.

Директива rewrite работает с URI, аргументы запроса туда не попадают.
Второй вариант быть может заработает, если заменить $request_uri на $args,
а регулярное выражение исправить  на ^&


4 апреля 2013 г., 12:47 пользователь skeletor <nginx-forum at nginx.us>написал:

> Всем привет.
> Нужно сделать редирект со страницы вида http://domain.com/?&... на
> страницу
> http://domain.com. То есть, если строка запроса начинается с ?& - то
> просто
> перенаправить на главную. Пробовал такие варианты:
>
> [code]
> rewrite ^/?& http://$host permanent;
> [/code]
> [code]
>        if ($request_uri ~* ^/?&) {
>                rewrite ^ http://$host permanent;
>        }
> [/code]
> а так же пробовал экранировать ? и & - не работает. Либо не перенаправляет,
> либо получаем безконечный редирект.
> Прочитал, что амперсанд используется для отделения параметров при
> GET-запросе и понял и вроде как нельзя его использовать в regexp. Или я
> неправ?
>
> Posted at Nginx Forum:
> http://forum.nginx.org/read.php?21,238083,238083#msg-238083
>
> _______________________________________________
> nginx-ru mailing list
> nginx-ru at nginx.org
> http://mailman.nginx.org/mailman/listinfo/nginx-ru




-- 
Best Regards,
Vadim Lazovskiy
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mailman.nginx.org/pipermail/nginx-ru/attachments/20130404/d8a9c271/attachment.html>


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