Все мои приложения работали нормально, но внезапно все сайты под IIS не загружают css, изображения, скрипты. Он перенаправляет на страницу входа.
Если я вхожу в систему, все работает нормально. например, mysite.com/Account/LogOn?ReturnUrl=%2fpublic%2fimages%2ficons%2f41.png
На моем локальном компьютере он отлично работает без входа в систему.
c#
asp.net-mvc
iis
Имран Рашид
источник
источник
Ответы:
Проблема может заключаться в том, что IIS не обслуживает статический контент, который вы можете настроить здесь:
Источник: http://adilmughal.com/blog/2011/11/iis-7-not-loading-css-and-image/
Windows 10:
источник
У меня была та же проблема: неаутентифицированная страница не загружала CSS, JS и изображения, когда я устанавливал свое веб-приложение в ASP.Net 4.5 в IIS 8.5 на Windows Server 2012 R2.
Тем не менее, казалось, ничто не решило проблему. Затем, наконец, я попытался установить личность анонимного пользователя на идентификатор пула приложений, и он начал работать.
Я бился головой несколько часов и надеюсь, что этот ответ избавит моих товарищей-разработчиков от мучений.
Я действительно хотел бы знать, почему это работает. Есть предположения?
источник
CPUName\IIS_IUSRS
и все еще не загружается. Еще раз спасибо!У меня была аналогичная ошибка, моя консоль выглядела так:
Моя проблема заключалась в том, что я запускал свой сайт в подпапке, поскольку компания использовала один верхний домен и ни одного поддомена. Как это:
host.com/app1
host.com/app2
Мой код выглядел следующим образом для включения скриптов, которые нормально работали на localhost, но не в app1 или app2:
Добавил знак тильды
~
в src, и все заработало:Объяснение
~
vs/
:/
- Корень сайта~/
- Корневой каталог приложения/
вернет корень сайта (http://host.com/
),~/
вернет корень приложения (http://host.com/app1/
).источник
Попробуйте удалить раздел staticContent из вашего web.config .
источник
Возможно, это не ответ на ваш вопрос, но у меня возникли те же симптомы, что и при новой установке IIS. CSS, JS и изображения не отображались. Произошло из-за того, что в IIS 7.5 не была установлена роль «Статическое содержимое».
источник
Вероятно, в вашем web.config включена проверка подлинности Windows. На локальном компьютере ваши учетные данные Windows передаются автоматически, и он работает. На действующем сайте вас рассматривают как анонимного пользователя (настройка IE может контролировать это, но не изменяйте это, если вы действительно не знаете, что делаете).
Это вызывает следующее:
Это не сломано, просто работает, как задумано, но чтобы "исправить" это:
источник
Добавьте это в свой web.config
источник
"~/Images"
Используйте это в разделе конфигурации вашего файла web.config:
источник
Это была проблема с разрешениями Windows, я перемещаю папку, которая наследует неправильные разрешения. Когда я перехожу в папку wwwroot и добавляю разрешение пользователю iis, он начинает работать нормально.
источник
desktop
вwwwroot
папке, кроме того , я добавил полный контроль сетевой сервис, который связан с пула приложений.Для меня добавление этого в
web.config
решенную проблемуисточник
Мой час боли был связан с определением типов MIME в файле web.config. Мне это было нужно для сервера разработки, но локальный IIS ненавидел его, потому что он дублировал типы MIME ... как только я удалил их из web.config, проблема с js, css и изображениями, которые не загружаются, исчезла.
источник
Это проблема аутентификации. В моем случае это решается следующими шагами: 1- Перейдите в диспетчер IIS, на левой панели разверните корень сервера и выберите свое веб-приложение в узле «Сайты». 2- На главном экране перейдите в раздел IIS и выберите Проверка подлинности. 3- Включить анонимную аутентификацию. 4- Затем выберите «Изменить» и установите для параметра «Изменить учетные данные анонимной аутентификации» значение «Удостоверение пула приложений».
источник
В моем случае,
IIS может загружать все
localhost
, но не может загрузить файлы моих шаблоновapp.tag
из192.168.0.123
потому что
.tag
расширения не было в списке.источник
Чтобы исправить это:
Перейти в информационную службу Интернета (IIS)
Нажмите на свой веб-сайт, на котором вы пытаетесь загрузить изображение
В разделе IIS откройте меню «Проверка подлинности» и также включите проверку подлинности Windows.
источник
Одно предложение, которое я счел полезным в прошлом, при разработке сайтов в тестовой среде localhost при работе с копией рабочего сайта. Убедитесь, что вы закомментировали канонические теги:
источник
Если вы попробовали все вышеперечисленные решения, но по-прежнему возникают проблемы, рассмотрите возможность использования метода ResolveClientUrl () в ASP.NET.
Скрипт для примера:
Вместо того, чтобы использовать
Используйте метод
Это было мое решение, которое сработало для друга, которому я помогал!
источник
У меня была такая же проблема. Для меня это произошло из-за того, что заголовок Cache-Control был установлен на уровне сервера в IIS как no-cache, no-store. Поэтому для моего приложения мне пришлось добавить в свой web.config следующее:
источник
Одна из возможных причин этого заключается в том, что ваше приложение ожидает запуска на порту 443 (стандартный порт SSL), а порт 443 уже используется. Я несколько раз сталкивался с этим, когда разработчики пытались запустить наше приложение, когда на их компьютерах работает Skype.
Невероятно, но Skype работает на порту 443. На мой взгляд, это ужасный недостаток дизайна. Если вы видите, что ваше приложение пытается работать на 444 вместо 443, выключите Skype, и проблема исчезнет.
источник
Я добавил
app.UseStaticFiles();
этот код в starup.cs метода Configure, чем он исправлен.И проверьте свое разрешение на эту папку.
источник
Для изображений используйте
в стиле используйте это
источник
В моем случае, когда ни один из моих файлов javascript, png или css не загружался, я попробовал большинство ответов выше, и ни один из них, похоже, не помог.
Я наконец нашел « Фильтры запросов », и мне пришлось добавить .js, .png, .css в качестве разрешенного / принятого типа файла.
Как только я внес это изменение, все файлы обслуживались правильно.
источник
Если вы видите ошибку 403 в консоли браузера, проверьте конфигурацию пакета MVC. Имена пакетов не должны совпадать с именами существующих папок в вашем проекте.
например.
... вызовет проблемы для IIS, если в вашем проекте существует структура папок $ (ProjectDir) \ Content \ css , поскольку он пытается найти в существующей папке содержимое пакета, которого нет.
Вместо этого просто используйте что-то вроде:
источник
Эта проблема возникает, когда IIS не отображает статическое содержимое, такое как файлы JS, CSS и изображений.
Чтобы решить эту проблему, вам необходимо выполнить следующие шаги:
ПЕРЕЙДИТЕ в Панель управления> Включение или отключение компонентов Windows> Информационные службы Интернета> Службы всемирной паутины> Общие функции HTTP> Статическое содержимое.
Убедитесь, что статический контент включен.
Бинго. И все готово. Выполните жесткую перезагрузку страницы, и вы сможете увидеть все статическое содержимое.
источник
У меня была такая же проблема, я попробовал все предложения, но ничего не получил. Скучали меня часами. Оказалось, что мой интернет-провайдер заблокировал порт 80 по некоторым причинам.
Совет: проверяйте свой трафик. Убедитесь, что порт 80 работает как локально (например, брандмауэр), так и извне.
источник