Для управления web сервером IIS существует специальная утилита iisreset.exe.
Если имя компьютера не указано, то команда выполняется для текущего web-сервера. Если у вас несколько серверов, то удобно управлять ими с одной машины. Дальше будут примеры для управления IIS на текущем web сервере без указания его имени.
iisreset
iisreset /restart
Остановка всех служб IIS, затем запуск всех служб IIS.
iisreset /status
Отображает состояние служб IIS:
- IIS Admin Service (IISADMIN)
- Windows Process Activation Services (WAS)
- World Wide Web Publishing Service (W3SVC)
iisreset /stop
Остановка всех служб IIS.
iisreset /start
Запуск всех служб IIS.
iisreset /reboot
Перезагрузить компьютер.
iisreset /restart /rebootonerror
iisreset /stop /rebootonerror
iisreset /start /rebootonerror
Параметр rebootonerror применяется при остановке, запуске или перезапуске служб IIS. В случае ошибки перезагружает компьютер. В случае таймаута тоже перезагружает компьютер. Таймаут по умолчанию на остановку служб IIS — 60 с. Таймаут по умолчанию на запуск служб IIS — 20 с.
iisreset /restart /rebootonerror /timeout:30
iisreset /stop /rebootonerror /timeout:30
Параметр timeout применяется при остановке или перезапуске служб IIS, имеет смысл только совместно с использованием rebootonerror. Задаёт произвольный timeout в секундах для остановки служб IIS.
iisreset /restart /noforce
iisreset /stop /noforce
Параметр noforce применяется при остановке или перезапуске служб IIS. Не завершает службы IIS принудительно. При этом в случае проблем могут возникать ошибки вида:
There was an error while performing this operation.
The service cannot accept control messages at this time. (2147943461, 80070425)Restart attempt failed.
The service cannot accept control messages at this time. (2147943461, 80070425)
Microsoft при этом почему-то даёт странную рекомендацию, вместо того, чтобы не использовать noforce, они рекомендуют останавливать службы через net stop/start:
net stop w3svc
net start w3svc
net stop iisadmin /y
net start w3svc
iisreset /disable
Отключает возможность перезапуска служб IIS.
iisreset /enable
Включает возможность перезапуска служб IIS.