The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

форумы  помощь  поиск  регистрация  майллист  вход/выход  слежка  RSS
"nginx rewrite ?&"
Вариант для распечатки  
Пред. тема | След. тема 
Форум WEB технологии (nginx)
Изначальное сообщение [ Отслеживать ]

"nginx rewrite ?&"  +/
Сообщение от skeletor email(ok) on 04-Апр-13, 12:24 
Всем привет.
Нужно сделать редирект со страницы вида http://domain.com/?&... на страницу http://domain.com. То есть, если строка запроса начинается с ?& - то просто перенаправить на главную. Пробовал такие варианты:


rewrite ^/?& http://$host permanent;


       if ($request_uri ~* ^/?&) {
               rewrite ^ http://$host permanent;
       }

а так же пробовал экранировать ? и & - не работает. Либо не перенаправляет, либо получаем безконечный редирект.

Прочитал, что амперсанд используется для отделения параметров при GET-запросе и понял и вроде как нельзя его использовать в regexp. Или я неправ?

Ответить | Правка | Cообщить модератору

Оглавление

Сообщения по теме [Сортировка по времени | RSS]


1. "nginx rewrite ?&"  +/
Сообщение от skeletor email(ok) on 04-Апр-13, 14:58 
>[оверквотинг удален]
>
 
>        if ($request_uri ~* ^/?&) {
>            
>    rewrite ^ http://$host permanent;
>        }
>

> а так же пробовал экранировать ? и & - не работает. Либо
> не перенаправляет, либо получаем безконечный редирект.
> Прочитал, что амперсанд используется для отделения параметров при GET-запросе и понял и
> вроде как нельзя его использовать в regexp. Или я неправ?

Пока пробовал и гуглил, натолкнулся на такую конструкцию (немного подправив под себя):

if ($query_string ~ "&(.*)"){
rewrite ^(.*)$ $1? permanent;
}

Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру