我拥有的是什么
devoldname.mysite.net
stagingoldname.mysite.net
oldname.mysite.net
我想要做urlrewrite或urlredirect,所以上面网址的所有流量都会转到:
devnewname.mysite.net
stagingnewname.mysite.net
newname.mysite.net
我定义了这个iis重写规则
<rewrite>
<rules>
<rule name="test" stopProcessing="true">
<match url=".*" />
<conditions>
<add input="{HTTP_HOST}" pattern="(.*)oldname.mysite.net" />
</conditions>
<action type="redirect" url="{C:1}newname.mysite.net" />
</rule>
</rules>
</rewrite>
我希望它会捕获devoldname.mysite.net并重定向到devnewname.mysite.net
但是,通过此网址访问时: devoldname.mysite.net/admin/login.aspx?ReturnUrl=%2fadmin%2fsamples2.aspx
我得到了这个: http://devoldname.mysite.net/devnewname.mysite.net?ReturnUrl=%2fadmin%2fsamples2.aspx
所以它以某种方式将它们加在一起并且似乎取代了login.aspx部分,我做错了什么?
我做错了什么?有人可以帮忙吗?
答案 0 :(得分:0)
你非常接近。我敢打赌,如果你重定向到完全限定的URL,它会起作用。尝试这样的事情:
<rewrite>
<rules>
<rule name="test" stopProcessing="true">
<match url=".*" />
<conditions>
<add input="{HTTP_HOST}" pattern="(.*)oldname.mysite.net" />
</conditions>
<action type="redirect" url="http://{C:1}newname.mysite.net" />
</rule>
</rules>
</rewrite>