IIS站点上子应用程序中的相对URL

时间:2014-09-29 14:34:27

标签: asp.net-mvc iis iis-7.5

我有"测试" IIS和" sub1"其中的子应用程序。

当我请求domain.com/sub1时,IIS成功处理子应用程序。

代码中的一些URL是相对的,当我在代码/组件/测试中有这样的东西时,应用程序请求跟随url domain.com/component/test而不是domain.com/sub1/component/test.

为了使相对网址有效,我需要更改哪些内容。

1 个答案:

答案 0 :(得分:0)

在代码中

,使用@Url.Content("~/")<% =Url.Content("~/") %>来获取应用程序的相对根。

或者,有时,您可以使用~/添加前缀,但通常只使用布局中的js和css文件

注意:@适用于剃刀视图引擎,<% %>适用于aspx视图引擎,您没有指定使用的是

编辑:(根据OP的评论)

CSS应该是您托管CSS的目录的相对,您可以使用../来遍历目录。对于你的JS,你可以编辑这些文件吗?我会在你的布局中定义一个SITE_ROOT变量(在所有js文件之上),然后从你的JS文件中引用该变量

示例:var SITE_ROOT = '@Url.Content("~/")';

然后使用SITE_ROOT + '/relative_url'

在JS文件中为您的调用添加前缀