【发布时间】:2013-06-08 10:02:13
【问题描述】:
对于本地开发测试,我需要捕获对www.somedomain.com/XXX(其中X 是路径)的所有请求,并将它们发送到localhost/somevdir/XXX。
我已将此添加到我的 HOSTS 文件 (c:\windows\system32\drivers\etc):
127.0.0.1 www.mydomain.com
然后,在 IIS8 (Windows 8) 中,我为主机 www.mydomain.com 添加了绑定到我的“默认网站”。这行得通,我现在可以浏览 www.mydomain.com/test.html 并查看测试 html 页面。我的虚拟目录位于默认网站内。然后,我将 URL 重写 URL 添加到网站的最后一点:
<rewrite>
<rules>
<rule name="mydomain.com" stopProcessing="true">
<match url="^www.mydomain.com/(.*)" />
<action type="Rewrite" url="localhost/MyVDir/{R:1}" logRewrittenUrl="true" />
</rule>
</rules>
</rewrite>
但是——那行不通。我得到一个 404,所以看起来匹配永远不会发生。我尝试过重定向和重写,并且尝试过不使用正则表达式中的 ^ 和其他一些正则表达式调整。谁能解释我做错了什么?
【问题讨论】:
标签: iis url-rewriting web-config iis-8