Сообщение об ошибке, которое вы видите (Сообщение об ошибке 401.3: у вас нет разрешения на просмотр этого каталога или страницы с использованием предоставленных вами учетных данных (доступ запрещен из-за списков контроля доступа)), как правило, происходит потому, что пользователь пула приложений, который выполняетвеб-приложение не имеет разрешений NTFS на чтение запрашиваемых файлов CSS и изображений.
Веб-приложение запускается в пуле приложений, для которого назначен пользователь.Вы можете узнать, какой пул приложений использует ваше приложение, проверив Основные настройки сайта.
Как только вы узнаете, какой пул приложений вы используете, вы можете просмотреть, какой пользователь настроен для запуска этого пула приложений, проверив пулы приложений, выберите Дополнительные параметры для своего пула приложений,затем посмотрите на Дополнительные параметры -> Модель процесса -> Идентичность.
По умолчанию пулы приложений настроены на использование пользователя AppPoolIdentity (кстати, в случае, если вам это нужно,имя пользователя для этого пользователя - IIS APPPOOL\ApplicationPoolName
, поэтому в моем случае это будет IIS APPPOOL\mywebapp
).Этот пользователь является членом как группы «Пользователи», так и группы «Прошедшие проверку». Если ваш пул приложений настроен на использование пользователя AppPoolIdentity , самый простой способ решить возникшую проблему с разрешениями - убедиться, что в группе пользователей как минимум указано Чтение& Выполнить , Список содержимого папки и Чтение доступа к корневой веб-папке приложения, а также ко всем файлам и подкаталогам.На моем тестовом компьютере авторизованным пользователям также разрешен любой доступ, за исключением полного доступа.(Примечание: в целях правильности эти ACL применяются каждый раз, когда я создаю новую папку в C :. Если вы хотите, вы можете уйти, не добавляя аутентифицированных пользователей или просто указав доступ на чтение для пользователей.не собираюсь пытаться определить, какой здесь фактический минимальный требуемый доступ).
Чтобы указать эти разрешения, щелкните правой кнопкой мыши папку, в которой находится веб-приложение в проводнике Windows, выберите Свойства> Безопасность, нажмите кнопку Изменить,и затем используйте Добавить, чтобы добавить группы.Обратите внимание, что после добавления групп вам, вероятно, потребуется нажать кнопку «Дополнительно»> «Изменить разрешения»> кнопку «Заменить все разрешения дочерних объектов ...», а затем нажать кнопку «ОК», чтобы предоставить разрешения всем дочерним объектам в папке (см.ниже).После завершения этой операции вы можете проверить один из файлов .css, чтобы убедиться, что группы были добавлены правильно.
После добавления этих разрешений IIS должен бытьвозможность обслуживать файлы CSS и изображения.
В качестве примечания: если вы получаете приглашение для входа в Windows, то, скорее всего, у вас включена функция «Проверка подлинности Windows - 401 Challenge» в разделе «Проверка подлинности» в IIS дляваше веб-приложение (см. ниже).Если этот параметр не указан, вы не получите подсказку при попытке просмотреть файл, который не имеет надлежащих списков ACL.Вместо этого вы просто получите сообщение об ошибке.Приглашение не будет отображаться.
Я проверил эту информацию с помощью Windows 7 Ultimate и IIS 7.5, поэтому, если вы используете другую ОС YMMV, но я считаю, что IIS должен вести себякак описано.
Надеюсь, это поможет.Если у вас есть какие-либо вопросы, пожалуйста, дайте мне знать.