Оптимизированные пакеты, возвращающие 404 при запросе с сайта.

StackOverflow https://stackoverflow.com//questions/23051480

Вопрос

У меня возникла эта странная проблема, когда я установил:

BundleTable.EnableOptimizations = true;

Когда я пытаюсь открыть свой веб-сайт, он просто не загружается, а когда я открываю консоль Chrome, я вижу следующее сообщение:

GET /localhost/bundles/scripts/angularjs/commonmodules?v=13-uWpwzN3U6kiHVssXRdpywHxrn09twvYKwoDVN3SU1 404 (не найден)

Однако, если я попытаюсь открыть ссылку, показанную на консоли Chrome, она загружается нормально, другими словами, ссылка находится, когда я пытаюсь открыть ее напрямую, но сервер (IIS 7.5) возвращает 404, когда страница пытается открыть ее. свяжите его через тег.

Кто-нибудь сталкивался с таким странным поведением?

Виртуальные пути для моих пакетов не сопоставляются ни с одним существующим файлом или каталогом, я включаю их, используя следующий код:

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);

И я уже пытался добавить следующие строки в system.webServer файла web.config:

<modules runAllManagedModulesForAllRequests="true">
    <remove name="BundleModule" />
    <add name="BundleModule" type="System.Web.Optimization.BundleModule" />
</modules>

Я не уверен, может ли это быть связано с этим, но я использую Umbraco v7 на этом веб-сайте, и это происходит только в том случае, если я устанавливаю для EnableOptimizations значение «true».

Это было полезно?

Решение

Если я правильно помню, это связано с конфигурацией umbraco.

Найдите ключ umbracoReservedPathsappSettings) в вашей web.config и добавьте туда путь к пакетам, вот так:

<add key="umbracoReservedPaths" value="~/umbraco,~/install/,~/bundles/"/>
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top