Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/algorithm/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Asp.net mvc 4 如何使用URL重写和ASP.NET优化来管理winhost上的子域';s束_Asp.net Mvc 4_Iis 7_Url Rewriting_Bundling And Minification_Asp.net Optimization - Fatal编程技术网

Asp.net mvc 4 如何使用URL重写和ASP.NET优化来管理winhost上的子域';s束

Asp.net mvc 4 如何使用URL重写和ASP.NET优化来管理winhost上的子域';s束,asp.net-mvc-4,iis-7,url-rewriting,bundling-and-minification,asp.net-optimization,Asp.net Mvc 4,Iis 7,Url Rewriting,Bundling And Minification,Asp.net Optimization,我将ASP.NET MVC4与WinHost一起使用 正如所问的问题,我遇到了同样的问题: 我正在试用WinHost,但遇到了一些问题 子域。在WinHost上,每个主机可以有多个子域 帐户,但每个子域都指向根网站。你可以 拥有www.example.com、sub1.example.com和sub2.example.com,但所有 其中一个将在上显示内容 其他主机允许您将子域指向计算机中的子文件夹 网站。这将允许您将sub1.example.com指向/sub1, sub2.example.c

我将ASP.NET MVC4与WinHost一起使用

正如所问的问题,我遇到了同样的问题:

我正在试用WinHost,但遇到了一些问题 子域。在WinHost上,每个主机可以有多个子域 帐户,但每个子域都指向根网站。你可以 拥有www.example.com、sub1.example.com和sub2.example.com,但所有 其中一个将在上显示内容

其他主机允许您将子域指向计算机中的子文件夹 网站。这将允许您将sub1.example.com指向/sub1, sub2.example.com至/sub2和www.example.com至/

WinHost建议使用asp/aspx页面重定向 到哪一点 至/sub1。虽然这样做可行,但我不希望子域出现在 url被删除两次

所以我试着用IIS7 URL重写来指向 /sub1。本·鲍威尔详细描述了这一点

我已经设法使这一部分正常工作,以便实际指向IIS中的虚拟应用程序“/sub1”

如果我使用Url.Content,它会完美地工作

现在,我正在使用ASP.NET优化并捆绑脚本和css。问题是它绝对需要一个相对url,即:

            bundles.Add(new ScriptBundle("~/bundles/jqueryval").Include(
                    "~/Scripts/jquery.unobtrusive*",
                    "~/Scripts/jquery.validate*"));
但是,由于它是一个相对url,因此我将在标记中获得以下内容:

<script src="/sub1/bundles/jqueryval?v=UgyEMAYOuSB9Bb6HcOEVHpd6fIIp54yF086SRNVcdIY1"></script>

当然,由于“sub1”,它找不到文件。我想到了URL重定向,我从来没有真正开始工作。也许是MVC的路线?也不确定如何做到这一点。我也可以放弃捆绑在一起使用“Url.Content”,我认为这是悲哀的


处理此问题的最佳方法是什么?

我知道您可以使用IBundleTransform根据特定情况修改捆绑包中的内容。您可以修改包上下文本身。这里有一个链接

我的问题实际上是关于呈现虚拟目录的“Script.Render(…)”函数。您说您已经在iis中配置了一些重写规则。我想知道是否可以使用RouteConfig.RegisterRoutes(RouteTable.Routes)在启动代码中捕获路由问题?