При разработке (отлично работает в реальном времени) страницы нашего веб-сайта не получают правильный CSS, пока пользователь не аутентифицируется (не входит в систему).
Таким образом, формы входа и выхода выглядят плохо, но, оказавшись внутри сайта, CSS снова работает.
Я предполагаю, что это какая-то проблема с аутентификацией? На самом деле я не особо разбирался в этом, потому что это только при работе над разработкой, так что это не большая проблема, но было бы неплохо знать, как ее исправить.





Убедитесь, что сам файл CSS не находится в защищаемой области. При необходимости вы можете вручную исключить файл через web.config.
Это хорошо. Тогда как это работает в вашей производственной среде? У вас должна быть такая же проблема, если только этот раздел не отсутствует в вашем dev web.config
У меня точно такая же проблема - страница входа в систему не стилизована на dev и отлично работает на продакшене. web.config точно такой же, за исключением строк подключения и настроек отладки. Это решение не решило для меня проблему.
Исправление: был тупой момент, он работает, если вы укажете весь путь, например. path = "App_Themes / Theme" или path = "App_Themes / Theme / file.css"
Я обнаружил, что это не решило мою версию проблемы. Я обнаружил, что для некоторых людей это было связано с IIS 7. Посмотрите, помогут ли они: stackoverflow.com/questions/6531250/… или форумы.iis.net/p/1173012/1961218.aspx
Мое решение заключалось в том, что IIS 7.5 требует, чтобы IUSR был предоставлен доступ для чтения. Я предполагаю, что учетные данные анонимного доступа отделены от пользователя пула приложений.
Чтобы позволить неаутентифицированному пользователю видеть ваши файлы .css (или любой другой файл / каталог), вы можете добавить элемент местоположения в свой файл web.config, указывающий на файл .css.
<configuration>
<system.web>
// system.web configuration settings.
</system.web>
<location path = "App_Themes/Default/YourFile.css">
<system.web>
<authorization>
<allow users = "*"/>
</authorization>
</system.web>
</location>
</configuration>
Я сам столкнулся с этой проблемой, и добавление местоположения вручную не имело значения. Я обнаружил, что предоставил IIS_IUSRS доступ к папкам, поэтому у моего пула приложений не было проблем с доступом к файлам, но IIS использовал учетную запись IUSR для анонимного доступа.
Чтобы исправить это, я открыл Диспетчер IIS -> IIS: Проверка подлинности -> Выберите «Анонимная проверка подлинности» -> Щелкните Действия: Изменить .. (или щелкните правой кнопкой мыши) -> Выберите «Удостоверение пула приложений»
Теперь попытки анонимного доступа используют IIS_IUSRS с правильными правами доступа к файлам.
Это было! Спасибо за этот ответ.
Исключите вручную, добавив в раздел <Configuration> следующее: <location path = "css"> <system.web> <authorization> <allow users = "*"> </allow> </authorization> </system.web > </location>