我有一个asp.net mvc 4应用程序,我在web.config中有这个规则
<system.webServer>
<rewrite>
<rules>
<rule name="Remove Virtual Directory">
<match url=".*" />
<action type="Rewrite" url="{R:0}" />
</rule>
</rules>
</rewrite>
我无法理解为什么以及如何运作。我使用它是因为godaddy在url中添加了一个虚拟路径,其中包含应用程序所在文件夹的名称。
即example.com/foldername/index
变为example.com/index
那么它如何通过“。*”找到虚拟路径并将其删除。 {R:0}是什么? 谢谢。
答案 0 :(得分:0)
好吧我似乎匹配网址这个正则表达式匹配每个网址,它不允许重定向包含虚拟路径的网址。由于mvc的路由找到了资源。
至于{R:0}。请求url是第一个参数,因此为0,正则表达式是不使用的secont参数。这将是{R:1}。