2010-01-12 2 views

ответ

3

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

Сценарий находится в %systemroot%\system32.

Чтобы запросить сервер, просто запустите IIsWeb.vbs /query w3svc/1 из командной строки.

Если он не работает, вы можете запустить IIsWeb.vbs /start w3svc/1, чтобы запустить его.

Вот article с дополнительной информацией об этих сценариях.

1
  • вы можете посмотреть w3wp.exe в списке процессов (если это IIS6)
  • вы всегда можете попробовать «IISReset/старт» - Я считаю, это работает, даже если IIS уже запущен
  • взять посмотреть на сценариях, предоставляемых Microsoft в C:\Inetpub\AdminScripts (при условии установки по умолчанию местоположения), есть startsrv.vbs, startweb.vbs - как сделать хорошую работу
+0

, то есть только если служба в данный момент активна, что не проверяет, работает ли она –

1

Простая вещь, которую вы можете сделать, если беспокоитесь о том, что iis не перезагружается после сбоя, это настроить ответы служб. Если вы заходите в сервисы, а затем смотрите на свойства iis, вы увидите вкладку восстановления. Измените каждый из параметров отказа, чтобы перезапустить службу. одна вещь, которую вы могли бы также сделать, - создать пакетный файл, который включает iisreset и установить возможность запуска программы и выбрать эту программу.

0

Найдено код здесь: https://social.msdn.microsoft.com/Forums/en-US/5a01d88b-2b7c-4d0b-bce0-9b90a236b64a/how-to-check-if-iis-is-running?forum=asmxandxml

Пример:

Dim sc As New System.ServiceProcess.ServiceController("World Wide Web Publishing Service") 

If sc.Status.Equals(System.ServiceProcess.ServiceControllerStatus.Stopped) Or sc.Status.Equals(System.ServiceProcess.ServiceControllerStatus.StopPending) Then 
    ' Start the service if the current status is stopped. 
    sc.Start() 
Else 
    ' Stop the service if its status is not set to "Stopped". 
    sc.Stop() 
End If 
Смежные вопросы