Ошибка службы IIS на Windows Server сайт не открывается

Как исправить ошибку службы IIS на Windows Server сайт не открывается

Ошибка службы IIS при открытии сайта на Windows Server возникает из-за остановки сервиса, неправильной конфигурации пула приложений или повреждённых файлов сайта. Решение требует проверки статуса IIS, перезагрузки сервиса и диагностики журналов событий. Следуйте пошаговой инструкции ниже для восстановления доступа к сайту.

Причины проблемы

  • Служба IIS остановлена или не запущена автоматически
  • Пул приложений AppPool в состоянии Stopped
  • Некорректная конфигурация привязок сайта (порт, IP-адрес, хост)
  • Повреждённые файлы конфигурации в папке %windir%\System32\inetsrv\config
  • Отсутствие прав доступа к файлам сайта или папке wwwroot
  • Конфликт портов — другой сервис занимает порт 80 или 443
  • Отключённые модули или обработчики в конфигурации IIS
  • Проблемы с пулом приложений: превышен лимит памяти, ошибка инициализации

Пошаговая инструкция

  1. Откройте Диспетчер служб нажатием комбинации Win+R, введите services.msc и нажмите Enter.
  2. Найдите в списке службу World Wide Web Publishing Service.
  3. Проверьте её статус — если написано Остановлена, кликните правой кнопкой мыши и выберите Запустить.
  4. Дважды кликните на службу World Wide Web Publishing Service для открытия свойств.
  5. На вкладке Общие установите тип запуска Автоматически в выпадающем меню.
  6. Нажмите Применить и OK.
  7. Откройте Internet Information Services (IIS) Manager нажатием Win+R, введите inetmgr и нажмите Enter.
  8. В левой панели разверните дерево: Имя сервераПулы приложений.
  9. Кликните правой кнопкой мыши на нужный пул приложений и выберите Запустить, если его статус Остановлен.
  10. Перейдите в раздел Сайты и проверьте статус вашего сайта — он должен быть Запущен.
  11. Кликните правой кнопкой на сайт и выберите Запустить, если требуется.
  12. Откройте командную строку от администратора нажатием Win+R, введите cmd, нажмите Ctrl+Shift+Enter.
  13. Выполните команду iisreset /restart для полной перезагрузки IIS.
  14. Дождитесь завершения процесса (должна появиться строка Перезапуск IIS успешно завершён).
  15. Откройте браузер и перейдите по адресу вашего сайта — например, http://localhost или http://имя-сайта.local.
  16. Если сайт всё ещё не открывается, откройте Просмотр событийWin+R, введите eventvwr.msc, нажмите Enter.
  17. Перейдите в раздел Журналы WindowsСистема и найдите события с источником IIS красного цвета (ошибки).
  18. Прочитайте описание ошибки и найдите код ошибки — скопируйте его в поисковую систему для уточнения решения.
  19. Если ошибка связана с доступом к файлам, откройте IIS Manager, выберите сайт, кликните Основные параметры и проверьте путь к папке в поле Физический путь.
  20. Убедитесь, что папка существует и доступна — кликните правой кнопкой на папку в проводнике, перейдите СвойстваБезопасность, проверьте права доступа.
  21. Если прав нет, кликните Изменить, добавьте пользователя IIS_IUSRS и установите ему разрешение Полный доступ.
  22. Если ошибка в конфигурации пула приложений, откройте IIS Manager, выберите пул, кликните Дополнительные параметры.
  23. Проверьте значения: Версия платформы .NET должна соответствовать версии приложения (например, v4.0 или v2.0).
  24. Проверьте параметр Режим канала — обычно установлено значение Интегрированный.
  25. Если конфигурация была изменена, сохраните её и перезагрузите пул приложений — кликните правой кнопкой и выберите Перезагрузить.
  26. Если проблема сохраняется, выполните в командной строке команду iisreset /noforce для мягкой перезагрузки без принудительного завершения процессов.

Часто задаваемые вопросы

Какая команда для быстрой перезагрузки IIS без потери подключений? Используйте iisreset /noforce — она перезагружает сервис более деликатно, позволяя активным сессиям завершиться.

Где находятся логи IIS для диагностики ошибок? Логи доступа и ошибок расположены в папке %SystemDrive%\inetpub\logs\LogFiles, а критические ошибки записываются в Просмотр событийЖурналы WindowsСистема.

Как проверить, какой процесс занимает порт 80? Откройте командную строку администратора и выполните netstat -ano | findstr :80 — найдите PID в последней колонке и определите приложение через диспетчер задач.

Похожие материалы

Проверка скорости интернет канала на сервере через утилиту speedtest-cli
Прокси сервер Squid на CentOS пошаговое руководство
DHCP сервер на базе Windows Server 2022