从应用程序(在根域级别)重定向到子应用程序

时间:2011-06-16 06:00:44

标签: asp.net iis web-config

我的托管仅支持web.config IIS配置。我想重定向我的

http://domain - > http://domain/X

这是我的尝试

<?xml version="1.0" encoding="UTF-8"?>
<configuration>
    <system.webServer>
        <httpRedirect enabled="true" destination="http://domain/X/" />
    </system.webServer>
</configuration>

它有效,但它对所有网站都有效,当我已经在http://domain/X/时它仍在工作,所以我得到递归http://domain/X/X/X/X/X/X/X等......

临时解决方案是

<?xml version="1.0" encoding="UTF-8"?>
<configuration>
    <system.webServer>
        <httpRedirect enabled="false"  />
    </system.webServer>
</configuration>

进入http://domain/Xhttp://domain/Y等等......但是当我转到http://domain/Y/Z时,它反正将我重定向到http://domain/X/Z/(所以我真的不想要把它放在任何文件夹中)

所以我认为我需要修复第一个重定向(以某种方式),使其仅适用于http://domain/

谢谢。

1 个答案:

答案 0 :(得分:1)

您可以尝试按照documentation设置childOnly属性,只有文件名出现在网址中时才会重定向。因此,只有http://domain/<file name>形式的网址会被重定向到http://domain/X/<file name>,这应该可以解决您的问题。要重定向http://domain/,您可以使用重定向到http://domain/X的默认文档。

您还可以查看URL重写模块 - 请参阅http://learn.iis.net/page.aspx/460/using-the-url-rewrite-module/(当然,如果需要,它不会发出HTTP重定向)