我想重定向:
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;
看这个文件了解详情。