我希望将以下mod_rewrite
规则转换为Nginx equivalent:
RewriteRule ^foo/(.*)$ /bar/index.php?title=$1 [PT,L,QSA]
RewriteRule ^foo/*$ /bar/index.php [L,QSA]
到目前为止,我有:
rewrite ^foo/(.*)$ /bar/index.php?title=$1&$query_string last;
rewrite ^foo/?$ /bar/index.php?$query_string break;
问题是(我认为!)查询字符串没有被追加。我还没有找到将QSA
参数移植到Nginx的方法。
答案 0 :(得分:17)
QSA在NGINX中是自动的。
如果您不想要,请添加?到新位置的末尾
重写^ / foo /bar/index.php?最后;
答案 1 :(得分:5)
这些重写规则使脚本起作用:
rewrite ^/foo/([^?]*)(?:\?(.*))? /bar/index.php?title=$1&$2;
rewrite ^/foo /bar/index.php;