Чистая переустановка IIS

Обновлено 16.11.2019

iis logoДобрый день! Уважаемые читатели и гости одного из крупнейших IT блогов рунета Pyatilistnik.org. В прошлый раз мы с вами устранили ошибку 0x80300024 при попытке установить Windows. Движемся дальше и сегодня пойдет речь, том, как выполнить чистую переустановку IIS роли. Для выполнения этой задачи у вас может быть ряд причин, например вы хотите начать работу с ролью IIS, так как будто вы ее только установили, вы можете захотеть попытаться устранить какие-то ошибки и проблемы. Давайте разбираться.

Постановка задачи

Ранее мы с вами производили установку роли IIS, мы настроили там сайты. Через какое-то время ко мне обратился разработчик, и сообщил, что у него есть ряд проблем с IIS. Начав разбираться я обнаружил, что есть повреждение файла конфигурации может привести к неисправностям или сбоям вашего веб-сайта/приложения. Пример ошибки:

The configuration section 'system.webServer' cannot be read because it is missing a section declaration

Иногда бывает проще произвести чистую переустановку IIS, чем проверять файлы конфигурации (такие как ApplicationHost.config или web.config) один за другим, построчно. При удалении IIS без выполнения дополнительных действий. вы обнаружите, что после переустановки у вас все та же конфигурация на сервере: те же веб-сайты, то же приложение и, вероятно, та же проблема. Это связано с тем, что в системе остаются старые конфигурационные файлы, которые так же нужно удалить перед новой установкой.

Как полностью удалить IIS в Windows

Чтобы вам произвести полную деинсталляцию роли IIS с удалением всех старых хвостов, нужно выполнить два этапа:

  1. Удалить роль IIS
  2. Удалить файлы из рабочих каталогов inetsrv, inetsrv, windows

ОБЯЗАТЕЛЬНАЯ РЕКОМЕНДАЦИЯ! Эта манипуляция сотрет всю вашу конфигурацию на IIS. Настоятельно рекомендуется сделать полную резервную копию вашего сервера перед выполнением этого действия.

Для начала давайте полностью удалим вашу роль Internet Information Services. Для этого есть два варианта, быстрый через PowerShell и более медленный, но через графический интерфейс.

Удаление IIS через диспетчер серверов

Самый простой метод, подходящий любому системному администратору, особенно начинающему. Откройте оснастку "Диспетчер серверов" и выберите пункт "Управление - Удалить роли и компоненты".

Удаление IIS через диспетчер серверов
Указываем сервер на котором будет происходить деинсталляция Internet Information Services, просто у вас в диспетчер серверов может быть добавлен не один сервер, например мы так ранее собирали оснастку управления RDS фермой.

выбор сервера для удаления роли IIS

Снимаем галку с роли "Веб-сервер IIS" и нажимаем далее.

Выбираем IIS для удаления через диспетчер серверов
Так же убедитесь, что у вас убрана галка с компонента "Служба активации процессов Windows (Windows Process Activation Services)". Служба активации процессов Windows (WAS) управляет конфигурацией пула приложений, а также созданием и временем жизни рабочих процессов для HTTP и других протоколов. Служба публикации в Интернете (W3SVC) и другие службы зависят от WAS. Список управляемых объектов, которые включены в этот управляемый объект:

Служба активации процессов Windows (Windows Process Activation Services)

  • Пул приложений IIS (IIS Application Pool) - Пул приложений служб IIS представляет собой группу URL-адресов, которые направляются одному или нескольким рабочим процессам. Поскольку пулы приложений определяют набор веб-приложений, которые совместно используют один или несколько рабочих процессов, они предоставляют удобный способ администрирования набора веб-сайтов и приложений и их соответствующих рабочих процессов. Границы процесса отделяют каждый рабочий процесс; следовательно, веб-сайт или приложение в одном пуле приложений не будут затронуты проблемами приложений в других пулах приложений. Пулы приложений значительно повышают как надежность, так и управляемость веб-инфраструктуры.
  • IIS Protocol Adapter - Адаптер протокола информационных служб Интернета (IIS) - это служба Windows, которая принимает сообщения по определенному сетевому протоколу и взаимодействует со службой активации процессов Windows (WAS) для направления входящих сообщений правильному рабочему процессу.

Подробнее на https://docs.microsoft.com/en-us/previous-versions/windows/it-pro/windows-server-2008-R2-and-2008/cc735229(v=ws.10)

Далее после удаления потребуется перезагрузка сервера. поэтому я рекомендую поставить галку "Автоматический перезапуск конечного сервера, если требуется" и смело нажимайте кнопку "Удалить".

Удаление IIS через диспетчер серверов с последующей перезагрузкой

Удаление IIS через PowerShell

Данный метод мне нравится больше, поскольку все делается одной командой. Во первых запустите оболочку PowerShell от имени администратора. Далее чтобы посмотреть список всех компонентов у роли IIS выполните вот такую команду.

get-windowsfeature *web* | Where-Object -FilterScript { $_.Installed -Eq $TRUE}

Удаление IIS через PowerShell

У вас будет выведен список всех установленных компонентов Internet Information Services. Чтобы удалить, вам необходимо добавить конвейер, в итоге получим:

get-windowsfeature *web* | Where-Object -FilterScript { $_.Installed -Eq $TRUE} | Remove-WindowsFeature

Процесс Удаления IIS через PowerShell

Можете еще раз проверить остались ли компоненты, хочу напомнить, что для завершения процедуры, нужно перезагрузить сервер, через командлет Restart-Computer

Успешное удаление IIS через PowerShell

для удобства можете скачать готовый скрипт по удалению IIS через Powershell

Удаление IIS через Windows Admin Center

Не могу не упомянуть используемый мной новый инструмент администрирования и управления сервером Windows Admin Center. Заходим в нем в раздел "Роли и компоненты", выбираем роль IIS и ее содержимое. После чего просто нажимаем удалить.

Удаление IIS через Windows Admin Center

Вам покажут список затрагиваемых компонентов, если все устраивает, то нажимаем удалить.

Процесс удаления IIS через Windows Admin Center

ждем удаление роли, потребуется перезагрузка.

Успешное удаление роли IIS через Windows Admin Center

Удаление старых конфигурационных файлов

Вторым этапом очистки хвостов от роли IIS, выступает удаление или очистка некоторых каталогов.

ОБЯЗАТЕЛЬНАЯ РЕКОМЕНДАЦИЯ! Эта манипуляция сотрет всю вашу конфигурацию на IIS. Настоятельно рекомендуется сделать полную резервную копию вашего сервера перед выполнением этого действия.

  • C:\Windows\system32\inetsrv\ - тут лежат конфигурационные файлы
  • C:\inetpub\ - тут лежат ваши сайты, не забываем делать их копию
  • C:\Windows\iis_версия.log - тут лежат логи

Очистка конфигурационных файлов после удаления IIS

На этом чистую переустановку роли Internet Information Services можно считать оконченной. С вами был Иван Семин, автор и создатель IT портала Pyatilistnik.org.

Автор - Сёмин Иван

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *