【发布时间】:2016-08-25 10:51:46
【问题描述】:
我不是 IIS 管理员,不是 Umbraco 用户,也不是 .NET 开发人员,但是。
我们有一个 Umbraco 应用程序,它是从另一个机构迁移到我们的。它适用于 Azure、WebApp。
问题是:开发人员团队添加了新的语言环境 - 但我们无法使其在我们的环境中工作(但它在开发人员的工作站上本地工作)。此外 - 所有旧语言环境 - 都可以正常工作(在下面的示例中为 FR)。
我们已将语言环境包添加到 ./App_Start/BundleConfig.cs:
...
var fr_fr = new ScriptBundle("~/bundles/script_fr_fr");
var pl_pl = new ScriptBundle("~/bundles/script_pl_pl");
...
SetCommonIncludes(pl_pl);
pl_pl.Include(
"~/client/scripts/ui/dialog/AgeGateDialog_pl_pl.js"
);
...
bundles.Add(fr_fr);
bundles.Add(pl_pl);
bundles.Add(standAloneiFramePage);
...
但是在应用程序构建(使用msbuild)和部署(使用msdeploy)之后 - fr_fr 章节有效,而 pl_pl - 给出 404 错误:
> Request
> URL:http://applicationstaging2.azurewebsites.net/bundles/script_pl_pl
> Request Method:GET Status Code:404 Not Found
我们的web.config 文件中有umbracoReservedPaths:
...
<add key="umbracoReservedPaths" value="~/umbraco,~/install/,~/api,~/Content,~/Controllers,~/Views,~/Areas,~/radio,~/bundles,~/bundles/" />
...
据我从谷歌链接了解 - “捆绑”是一个基于内存的对象,由 .NET(自 4.5 起)应用程序在接受GET 请求后创建。然后应用程序“生成”这个对象,其中包括一些 JS/CSS/etc 数据,将其放入内存中,并且必须通过路径 ~/bundles/scriptname 返回。 IE。 - 它不是文件系统对象,因此 - 我无法直接在服务器上检查它的文件(也无法在内存中找到它,因为这不是具有所有 GNU 实用程序的普通 Linux 机器)。
我很困惑 - 从哪里开始调查以及如何解决这个问题。或者至少 - 如何调试它(Azure 的“应用程序”和“Web 服务器”日志 - 绝对没用的东西)。
感谢任何提示。
【问题讨论】:
标签: asp.net azure msbuild umbraco