2013-06-02 67 views
1

我有托管在同一台服务器上,结构多个网站如下:MVC〜/不解析为虚拟目录应用程序根

http://primary-domain.com/hostedsites/MVCWebApplication1/ = http://MVCWebApplication1.com/

http://primary-domain.com/hostedsites/MVCWebApplication2/ = http://MVCWebApplication2.com/

...

问题是,在托管网站(即MVCWebApplication1,MVCWebApplication2等)中所有引用的~/解析为

http://MVCWebApplication1.com/hostedsites/MVCWebApplication1/

,而不是

http://MVCWebApplication1.com

请注意:

我已经有以下我的web.config:

<rule name="Remove Virtual Directory"> 
    <match url=".*" /> 
    <action type="Rewrite" url="{R:0}" /> 
</rule> 

我怎样才能解决这个问题?

回答

1

我最终什么事是用一堆变通的做:

web.config

<rewrite> 
    <rules> 
    <rule name="Remove Virtual Directory"> 
     <match url=".*" /> 
     <action type="Rewrite" url="{R:0}" /> 
    </rule> 
    </rules> 
</rewrite> 
这样

,而是创建链接:

<a href="~/Help">Help</a> 

这样做:

@Html.ActionLink("Help", "Help") // This seems to create clean urls 
0

您只需将您的虚拟目录转换为IIS中的应用程序即可。

+0

它们当前都设置为“应用程序根目录”,我处于共享环境,因此对IIS的控制有限。 – James

相关问题