带参数的 IIS URL 重写规则
我很难让 URL 重写规则发挥作用。
我想要这个网址:
http://www.mysite.com/oldpage.aspx?oldid=123
重写为:
http://www.mysite.com/sub/newpage。 aspx?newid=123
这是我所拥有的,但它不起作用:
<rule name="Old2New" stopProcessing="true">
<match url="^oldpage.aspx?oldid=([0-9]+)" />
<action type="Rewrite"
url="/sub/newpage.aspx?newid={R:1}"
appendQueryString="true" />
</rule>
我缺少什么?
I am having a hard time getting a URL rewrite rule to work.
I want this url:
http://www.mysite.com/oldpage.aspx?oldid=123
To rewrite to:
http://www.mysite.com/sub/newpage.aspx?newid=123
Here is what I have, but it's not working:
<rule name="Old2New" stopProcessing="true">
<match url="^oldpage.aspx?oldid=([0-9]+)" />
<action type="Rewrite"
url="/sub/newpage.aspx?newid={R:1}"
appendQueryString="true" />
</rule>
What am I missing?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
使用条件捕获查询字符串部分 {C:1},如下所示:
已测试且工作正常。
Use the conditions to catch the query string part {C:1}, like this:
Tested and working.
正则表达式索引从 0 而不是 1 开始。因此您的规则应该是:
您可以在 IIS7 界面中轻松测试您的规则。
The regex index starts at 0 not 1. so your rule should be:
You can easily test your rule in IIS7 interface.