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