这是我的规则在web.config中设置:URL重写问题
<rule name="RedirectPopups" stopProcessing="true">
<match url="^webforms/visitor/popup/*" />
<conditions>
<add input="{REQUEST_METHOD}" pattern="^POST$" negate="true" />
<add input="{QUERY_STRING}" pattern="^([^=&]+)=([^=&]+)$" />
</conditions>
<action type="Redirect" url="jwelery/INEEDTHEPAGEVARIABLEHERE/{C:1}/{C:2}" appendQueryString="false" redirectType="Permanent" />
</rule>
基本上我有我的web表单的弹出窗口\访问者\弹出。我想写一个规则,当在这个弹出目录中请求任何页面时。它被重定向到一些自定义网址。
例如,
如果用户请求webforms/visitor/popup/HelloWorld.aspx?a=1
他应该被重定向到jwelery/HelloWorld/a/1
我只是需要什么,我应该在重定向行动“INEEDTHEPAGEVARIABLEHERE”写的解决方案。有什么特殊的变量可以使用吗?我使用的IIS7
感谢。
哇,这很好地工作!谢谢。但是,你能告诉我是什么样的区别{R:1}和{C:1},究竟是什么人?任何链接或者如果你能解释的话我也会很感激。 – TCM
{R:N}是反向引用,以排除模式,{C:N}为调节模式。您可以使用{C:1}正确回复您的QueryString模式。一个很好的概述可以在这里找到:http://learn.iis.net/page.aspx/465/url-rewrite-module-configuration-reference/ – Olaf
谢谢奥拉夫。你已经清除了几个月来我所怀疑的一个疑问。 – TCM