Изменение пула приложений IIS 6 без влияния на пулы приложений на всем сервере - PullRequest
3 голосов
/ 01 августа 2011

Я не уверен, что происходит что-то странное или это нормально, но, начиная с framework 4, когда я создаю новый сайт в нашей установке IISv6, я получал сообщение о том, что переход на framework 4 приведет к перезапуску IIS(но это исчезло с тех пор, как несколько обновлений назад), я думаю, что он все равно перезагружает сервер, когда я меняю фреймворк, просто больше никаких предупреждений.Поэтому я провел небольшое исследование и написал скрипт, который позволял мне переключать версию фреймворка без этого.

@Echo Off
set /p id=Enter Site Instance:
echo %id%
C:\WINDOWS\Microsoft.NET\Framework\v4.0.30319\aspnet_regiis -norestart -s W3SVC/%id%
pause

Проблема, с которой я столкнулся, возникает, когда я меняю пул приложений в любом данном веб-приложении;похоже, что другие пулы приложений (включая тот, к которому я добавляю) обновляются.У меня иногда были случаи переключения, приводившего к остановке каждого пула приложений, и затем мне приходилось перезапускать их все снова, что может привести к небольшому простою.Я старался выпускать новые сайты только рано утром или в конце рабочего дня, чтобы избежать как можно большего количества сбоев, но я не понимаю, почему должно происходить что-то подобное.

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

Может кто-нибудьскажите мне, если это то, что всегда происходило с предыдущими версиями фреймворка и если есть возможность обойти, например, могу ли я написать сценарий переключения пулов приложений, не затрагивая другие пулы приложений

Edit 2011-08-01

нашел эту статью: http://msdn.microsoft.com/en-us/library/k6h9cz8h%28VS.80%29.aspx,, в которой упоминается скрипт с именем iisapp и похоже, что он может выполнить работу, исследует больше.

1 Ответ

4 голосов
/ 03 августа 2011

Нашли ответ на этом сайте: http://forums.iis.net/t/1152572.aspx

используя vbs в админскриптах, называемых adsutil (не iisapp, как я думал ...), вы можете написать следующее в командном файле.

@Echo Off
set /p id=Enter Site Name:
echo %id%
CD /D C:\inetpub\AdminScripts 
Cscript.exe /nologo adsutil.vbs set W3SVC/%id%/root/apppoolid [APP POOL NAME]
...