Комплект стилю MVC4, що дає 403


99

Коли включення / мінімізація ввімкнено, деякі мої пакети, мабуть, мають недійсну URL-адресу в браузері (що закінчується на /), а IIS видає 403 заборонену помилку, ніби намагаючись перерахувати вміст папки.

Немає різниці в налаштуванні моїх пакетів - вони не є .min.css, права доступу і т.д.


3
можливий дублікат
плат

Відповіді:


233

Мої пакети були зареєстровані як шляхи, які відповідали фактичній папці рішення, наприклад ~/Content/forum.

Це добре працює, коли пакетне вимкнення (пакет включено правильно!), Але не тоді, коли пакет увімкнено.

Рішення полягає в тому, щоб змінити зареєстроване ім’я набору, щоб воно не було таким, як усе, що існує у файловій системі.


20
Зверніть увагу також , якщо CSS файли відносяться до образності або інших файлів щодо CSS, переконайтеся , що пакет ім'я файлу є те під папку , яка містить фактичні CSS. Наприклад, ~/Content/myfolder/bundleякщо CSS Content/myfolder
нижчий

1
У мене було два пакети: ~ / content / kendo (для css) та ~ / bundles / kendo (для скриптів). Отже: помилка 403. Коли я змінив ім'я одного з них - проблема зникла. Дякую.
VikciaR

1
@KierenJohnstone вибачте, що не є конкретним, "Change the registered name of the bundle"що ви з цим маєте на увазі? - Я припустив назву пакета, який ми присвоюємо. Як (напівжирна частина) -> bundles.Add(new StyleBundle( "~ / Зміст / css" ).Include("~/Content/site.css"));
Дон Томас Бойл

1
Пляма на. Здається, це помилка у пакеті Nuget FontAwesome.
wolfyuk

1
Також у пакунку select2 nuget.
Tetsujin no Oni

3

У моєму випадку пакет був вказаний як каталог, @Scripts.Render("~/scripts")тому IIS не знав, як обслуговувати фактичний файл js, я змінив ім'я пакета, щоб представляти файл javascript, @Scripts.Render("~/scripts.js")і це виправило. Те саме стосувалося мого набору стилів.


3

Проблема полягає у правилах іменування, яким має бути ваше ім’я набору

("bundles/css") 

Це вирішило мою проблему.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.