从网站请求时返回404的优化捆绑包
-
22-12-2019 - |
题
我有这个奇怪的问题,当我设置:
BundleTable.EnableOptimizations = true;
当我尝试打开我的网站时,它只是不会加载,当我打开Chrome的控制台时,我看到以下消息:
GET/localhost/bundles/scripts/angularjs/commonmodules?v=13-uWpwzN3U6kiHVssXRdpywHxrn09twvYKwodvn3su1 404(未找到)
但是,如果我尝试打开chrome控制台上显示的链接,它加载得很好,换句话说,当我尝试直接打开它时会找到链接,但是服务器(IIS7.5)在页面尝试通过标签链接
有没有人经历过这种奇怪的行为?
我的捆绑包的虚拟路径不映射任何现有文件或目录,我使用以下代码将它们包含在内:
var myBundle= new ScriptBundle("~/bundles/scripts/angularjs/bootstrapping");
bootstrapping.Include("~/app/app.js")
.Include("~/app/config.js")
.Include("~/app/config.exceptionHandler.js")
.Include("~/app/config.route.js");
bundles.Add(bootstrapping);
我已经尝试在web上添加以下行。config的系统。网站服务器:
<modules runAllManagedModulesForAllRequests="true">
<remove name="BundleModule" />
<add name="BundleModule" type="System.Web.Optimization.BundleModule" />
</modules>
我不确定这是否可能相关,但我在这个网站上使用Umbraco v7,只有当我将EnableOptimizations设置为"true"时才会发生这种情况。
解决方案
如果我没记错的话,这是umbraco配置相关的。
找到钥匙 umbracoReservedPaths
(在 appSettings
)在你的 web.config
并将路径添加到那里的bundles,就像这样:
<add key="umbracoReservedPaths" value="~/umbraco,~/install/,~/bundles/"/>
不隶属于 StackOverflow