Я пытаюсь заставить Nginx удалить только определенный параметр из запрошенного URL. Допустим, имя параметра par2
. Вот примеры запрошенных URL:
www.example.com/page?par1=a&par2=b
www.example.com/page?par2=b
Эти страницы должны перенаправляться на:
www.example.com/page?par1=a
www.example.com/page
Вот что у меня есть в файле conf на данный момент:
location / {
...
if ($args ~* "par2") {
rewrite ^(.*)$ $request_uri permanent;
}
}
Это частично работает - он удаляет параметр par2
, но он также удаляет все остальные параметры и перенаправляет на:
www.example.com/page
www.example.com/page
Как заставить его удалить только определенный параметр (в данном случае par2
)?
EDIT:
Насколько я знаю, рекомендуется использовать if
только если за ним следует rewrite
, поэтому я бы предпочел такое решение.