我正在尝试重写以下网址:
example.com/[name1]/[name2]
为:
example.com/[name2].htm?id=[name1]
我正在尝试这个重写规则:
rewrite ^/(\d+)/(.+)/ /$2?id=$1 last;
但似乎确实有效。有人可以帮我吗?谢谢!
答案 0 :(得分:0)
你忘记了重写中的.htm
正如regexp所假设的那样,name1总是由所有数字组成是否正确?
更新:
location ~ ^/([A-Za-z0-9]+)/(.+)/$ {
rewrite ^/([A-Za-z0-9]+)/(.+)/ /$2.htm?id=$1 last;
}
基本上我们在这里做的是:
(注意:我们需要重复正则表达式,因为重写指令会重置$ 1和$ 2反向引用的内容,如果我们在其他地方执行其他操作,我们可以直接在位置块内使用它们)