Я хотел бы перенаправить:
something.com/search?keywords='value'
к
something.com/search?q='value'
Вот мой конфиг Nginx:
location ~ /search {
if ($args ~* "keywords=(.*)") {
rewrite ^.*$ /search?q=$arg_keywords permanent;
}
}
Но q
при перенаправлении параметр оказывается пустым.
Что не так?
решение1
Но параметр q при перенаправлении пуст.
Я не вижу этой проблемы. Когда я тестирую конфигурацию в том виде, в котором она написана, она создает цикл перенаправления, поскольку оригинал keywords='value'
добавляется к переписанному URI.
Вы можете предотвратить rewrite
включение любых исходных параметров, добавив ?
к переписанному URI.
Например:
rewrite ^ /search?q=$arg_keywords? permanent;
Видетьэтот документдля получения подробной информации.