Как перезапустить отдельный сайт в IIS7 + с помощью командной строки?

18

Как перезапустить один сайт в IIS7 + только с помощью командной строки?

Функциональность та же, что и у пункта меню в картинке (но из командной строки).

введите описание изображения здесь

Iisreset не имеет никаких опций для работы с отдельными файлами, и я нашел несколько древних ссылок на Iisweb.vbs, который, кажется, устарел.

Kjensen
источник

Ответы:

26

То, что вы ищете, это appcmdкоманда. Взгляните на руководство TechNet .

Чтобы перечислить ваши сайты :

%windir%\system32\inetsrv\appcmd list site

Чтобы перезапустить ваш сайт, остановите его, а затем запустите :

appcmd start site /site.name:string

или

appcmd stop site /site.name:string

Wesley
источник
Просто примечание - я находился в каталоге iisexpress (cd \ Program Files \ IIS Express) и был озадачен тем, куда пропала опция запуска. Убедитесь, что вы используете правильный веб-сервер, то есть C: \ Windows \ System32 \ inetsrv для IIS. Просто чтобы другие не допустили мою ошибку
Crab Bucket
Любая мысль, почему приведенная выше команда даст мне 'stop' is not recognized as an internal or external command, operable program or batch file.? Я проверил, что startи stopкоманды работают индивидуально, но не через трубопровод.
dotNET
@ DotNET Я полагаю, что Уэсли имел в виду либо, startлибо stop, а не пайпинг.
лайка
1
@laika: аааа ... иногда мы становимся такими слепыми. Теперь это так очевидно, что я смотрю на это. Спасибо за указание. Это было много лет назад, даже не помню, что я делал. :)
dotNET
2
Вот пример вызова этого (для сайта под названием «SDL Web»): %windir%\system32\inetsrv\appcmd stop site /site.name:"SDL Web" я вставил это в файл .bat, и это работает, спасибо.
Джонатан Уильямс
4

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

Это должно быть ближе к незаметному для конечных пользователей, в то время как остановка / запуск, вероятно, выдаст 503 секунды, пока сайт не работает.

APPCMD LIST WP

APPCMD RECYCLE WP

версии для командной строки этого ...

TristanK
источник
-1

Перечислите свои существующие веб-сайты с:

C:\> iisweb.vbs /query

и затем вы можете перезапустить определенный сайт, выполнив:

C:\> iisweb.vbs /stop <website> && iisweb.vbs /start <website>
кванты
источник
iisweb больше не используется в IIS 7 и более поздних версиях.
Уэсли