📖 IIS ошибка 0x80070005: права доступа и запуск сайта

Ошибка 0x80070005 в IIS обычно связана с AppPool identity и NTFS ACL. Пошагово: проверка пула, icacls, iisreset, логи IIS.

IIS ошибка 0x80070005: права доступа и запуск сайта

Ошибка 0x80070005 в IIS означает, что веб-сервер получил «Отказано в доступе» при чтении файлов сайта, запуске пула приложений или обращении к системному ресурсу. На практике чаще всего проблема в NTFS-правах и неправильной identity у AppPool.

Выполняйте шаги ниже по порядку: от проверки пула и ACL до системной диагностики. После каждого шага перезапускайте сайт и проверяйте результат.

⚠️ Важно перед изменением прав

Создайте точку восстановления: Win + Rsysdm.cpl → «Защита системы» → «Создать». Это обязательный шаг перед изменением ACL и параметров пула приложений.

Способ 1. Проверить Physical Path сайта

  1. Откройте IIS Manager и выберите сайт.
  2. Перейдите в «Basic Settings» и проверьте Physical path.
  3. Убедитесь, что папка существует и доступна локально.

Способ 2. Проверить AppPool identity

  1. Откройте «Application Pools» и выберите нужный пул.
  2. Нажмите «Advanced Settings» и проверьте параметр Identity.
  3. Если используется кастомная учётка, проверьте её пароль и права.

Способ 3. Проверить права NTFS на папку сайта

  1. Откройте свойства папки сайта → «Безопасность».
  2. Добавьте IIS_IUSRS или identity AppPool.
  3. Выдайте минимум Read & Execute, List folder contents, Read.

Способ 4. Проверить ACL из консоли

  1. Откройте CMD от имени администратора.
  2. Проверьте ACL корневой папки сайта.
icacls "C:\inetpub\wwwroot"
icacls "C:\path\to\site"

Способ 5. Проверить конфигурацию сайта и пула через appcmd

  1. Перейдите в каталог утилиты IIS.
  2. Проверьте список сайтов и пулов приложений.
cd %windir%\System32\inetsrv
appcmd list site
appcmd list apppool

💡 Совет

Если сайт работает локально, но даёт 0x80070005 при доступе к сетевой папке, назначьте identity AppPool отдельную доменную учётную запись и проверьте доступ именно под этой учёткой.

Способ 6. Перезапустить IIS и проверить доступ

  1. Выполните перезапуск IIS.
  2. Откройте сайт и проверьте, исчезла ли ошибка.
iisreset

Способ 7. Проверить системные файлы (SFC/DISM)

  1. Выполните проверку и восстановление системных компонентов.
  2. Перезагрузите сервер и повторите тест сайта.
sfc /scannow
DISM /Online /Cleanup-Image /RestoreHealth

Пути и логи для диагностики IIS 0x80070005

  • IIS-логи: C:\inetpub\logs\LogFiles.
  • Конфиг IIS: C:\Windows\System32\inetsrv\config.
  • Журналы событий: C:\Windows\System32\winevt\Logs.
  • Логи CBS: C:\Windows\Logs\CBS\CBS.log.
  • Логи DISM: C:\Windows\Logs\DISM\dism.log.

FAQ

Почему IIS показывает ошибку 0x80070005?

Код 0x80070005 означает отказ в доступе. Обычно IIS не может прочитать файлы сайта из-за неверных NTFS-разрешений или неподходящей identity пула приложений.

Как проверить identity пула приложений в IIS?

Откройте Application Pools, выберите нужный пул, затем Advanced Settings и параметр Identity. Учётная запись пула должна иметь минимум права чтения и выполнения на папку сайта.

Какие права на папку сайта нужны для IIS?

Минимально нужны Read & Execute, List folder contents и Read для IIS_IUSRS или конкретной identity AppPool. Полный доступ обычно не требуется.

Как проверить ACL через командную строку?

Используйте icacls для просмотра текущих разрешений и убедитесь, что у нужной identity есть доступ к корню сайта и вложенным каталогам.

Где смотреть логи, если 0x80070005 остаётся после исправления прав?

Проверьте IIS-логи в C:\inetpub\logs\LogFiles и события в Event Viewer (Application/System). Дополнительно проверьте CBS и DISM логи для системных ошибок.

⚡ Статья обновляется

  • 22.02.2026 — первая публикация

Последняя проверка: 23.02.2026