我在同一个asp.net解决方案中有两个网站(index.html文件)。我有两个域,我想指向正确的html文件。
这是一个angularjs应用程序,所以每个站点只有一个html文件。
我希望http://site1.myhostname.com/的所有资源请求都返回/index.html。
我希望http://site2.myhostname.com/的所有资源请求都返回/site2/index.html
配置web.config和/或dns配置是否可以实现?
答案 0 :(得分:0)
我可以看到两个解决方案
第一个是在IIS中有2个不同的网站,并使用适当的绑定配置。在这种情况下,每个网站都有自己的文件夹和资源。
这是我推荐的解决方案。
另一种解决方案是使用IIS的URL重写模块。
您可以在那里安装:http://www.iis.net/downloads/microsoft/url-rewrite
然后在你的web.config
<system.webServer>
<rewrite>
<rules>
<rule name="Rewrite sub-domain to sub-directory" stopProcessing="true">
<match url="(.*)" />
<conditions>
<add input="{HTTP_HOST}" pattern="(\w+)\.company\.com" />
</conditions>
<action type="Rewrite" url="{C:1}/{R:0}" />
</rule>
</rules>
</rewrite>
</system.webServer>
此规则将重写从子域到子目录的所有请求。