【问题标题】:Absolute path generated by ASP.NET Bundling - how to generate relative path instead?ASP.NET Bundling 生成的绝对路径 - 如何生成相对路径?
【发布时间】:2014-05-07 01:38:06
【问题描述】:

我正在尝试让 ASP.NET Bundling 更改它为 JS/CSS 包生成路径的方式。如果我的网站托管在 http://example.com/myapp 上并且我使用 Scripts.Render("~/bundles/js") 和 Styles.Render("~/bundles/css"),这就是我得到的:

<script src="/myapp/bundles/js?v=RYQkGlZ5kEreOyiFPLgJ2SkEJtBEjiJQ6NeuVTYwXMY1"></script>
<link href="/myapp/css?v=1FC5SbQ1-E0J4ZXC1coG1W09-2uMUsJx0S1y_amIU3U1" rel="stylesheet"/>

相反,如果通过一些 DNS 魔法,我们可以让用户使用 URL http://myapp - 尽管它仍然托管在 http://example.com/myapp - 我希望脚本/样式包呈现这样的 URL:

<script src="bundles/js?v=RYQkGlZ5kEreOyiFPLgJ2SkEJtBEjiJQ6NeuVTYwXMY1"></script>
<link href="bundles/css?v=1FC5SbQ1-E0J4ZXC1coG1W09-2uMUsJx0S1y_amIU3U1" rel="stylesheet"/>

有解决办法吗?我认为 Scripts.RenderFormat 或 Styles.RenderFormat 不会对此有所帮助。

【问题讨论】:

  • 快速回答,浏览System.Web.Optimizations 程序集,看起来它的编码很硬。除非您想重新发明轮子,否则我认为应用程序相对路径是必需的。不过可能有一些我没有看到的东西。

标签: bundling-and-minification asp.net-optimization


【解决方案1】:

问题的根源在于我需要将应用程序配置为位于我网站的根目录。

但是,DNS 魔法(一个 F5 负载平衡器)在这种情况下提供了帮助......我们的 F5 向导能够为请求执行所有 URL 重新路由/重写,因此即使应用程序不在根,请求到达正确的位置。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-10-04
    • 1970-01-01
    • 1970-01-01
    • 2018-02-23
    • 1970-01-01
    • 1970-01-01
    • 2013-04-10
    • 1970-01-01
    相关资源
    最近更新 更多