Назад | Перейти на главную страницу

Адрес перезаписи Nginx не добавляет параметры автоматически

Адрес первоначального запроса:

www.example.com/index.php?r=mobile/receive/index

Переписанный адрес запроса:

www.example2.com/newindex.php?r=mobile2/receive2/index2

Вот моя собственная конфигурация:

if ($args ~* "^r=mobile/receive/index") {
    rewrite ^ "http://www.example2.com/newindex.php?r=mobile2/receive2/index2";
}

Но конец переписанного адреса такой:

http://www.example2.com/index.php?r=mobile2/receive2/index2&r=mobile/receive/index

Вы видите мою проблему? Переписанный адрес добавляется автоматически, но это не то, что мне нужно. Те же клавиши параметров приведут к передней передней обложке.

Чтобы предотвратить добавление исходной строки запроса к целевому URL-адресу, вам необходимо добавить дополнительный вопросительный знак (?) в конце перезаписанного URL. Например:

rewrite ^ http://www.example2.com/newindex.php?r=mobile2/receive2/index2?;

Ссылка:
http://nginx.org/en/docs/http/ngx_http_rewrite_module.html#rewrite