Czy zmiana applicationHost.config spowoduje ponowne uruchomienie IIS7?

10

Jeśli dokonam zmiany w pliku:

% windir% \ system32 \ inetsrv \ config \ applicationHost.config

i zaktualizuj go, wprowadzając zmianę powodującą prawidłową konfigurację, czy spowoduje to ponowne uruchomienie IIS7 i wymuszenie ponownego uruchomienia wszystkich aplikacji?

Próbuję tego z użyciem sklonowanego na gorąco vm serwera, ale chciałbym wiedzieć, czy ktoś ma doświadczenie w jednym z tych scenariuszy, jaki powinien być oczekiwany wynik.

Wielkie dzięki

Kenny
źródło
1
Błędne sformatowanie pliku konfiguracyjnego rzeczywiście psuje serwer.
Kenny

Odpowiedzi:

11

Złożyłem krótki film na ten temat w zeszłym tygodniu. Obejmuje różnice między AppDomains i AppPools oraz to, co powoduje recykling. Przechodzę przez różne zmiany ustawień, które powodują pełne recyklingi i AppDomain. Omawiam również, w jaki sposób można stwierdzić, czy recykling ma miejsce i jaki jest jego wpływ.

Krótka odpowiedź jest taka, że ​​to zależy. „Dotykanie” aplikacji applicationHost.config samo w sobie nie spowoduje żadnego poziomu recyklingu, ale pewne zmiany konfiguracji spowodują. Każda zmiana w pliku machine.config lub root web.config .NET spowoduje ponowne uruchomienie AppDomain na serwerze dla tej wersji środowiska. Wszelkie zmiany w pliku web.config witryny spowodują recykling AppDomain dla tej witryny.

Scott Forsyth - MVP
źródło
2
Doskonałe wideo i wyjaśnienia.
osij2is
3

Jeśli edytujesz właściwości puli aplikacji, pule aplikacji powinny być przetwarzane ponownie (domyślnie, chyba że ustawiono opcję disallowrotationonconfigchange lub jej współczesny odpowiednik).

W przeciwnym razie nie, żadne zmiany system.webServer, o których mogę pomyśleć, nie spowodują ponownego uruchomienia pul aplikacji.

Jednak modyfikowanie wartości pliku web.config może spowodować ponowne uruchomienie aplikacji (AppDomains), jeśli używasz .Net.

Zobacz także: http://forums.asp.net/p/1344814/2742551.aspx

TristanK
źródło
+1 za prawie martwą odpowiedź. Jednym z komentarzy jest to, że dotknięcie web.config zawsze spowoduje ponowne przetworzenie domeny aplikacji.
Scott Forsyth - MVP
czy to oznacza, że ​​mogę dodać nagłówek hosta bez uruchamiania ponownego uruchomienia?
mcintyre321
@ mcintyre321 Prawidłowo. Zmiana nagłówka hosta nie spowoduje recyklingu AppDomain.
Scott Forsyth - MVP
Zmiana globalnych reguł przepisywania w applicationHost -> konfiguracja -> przepisywanie wydaje się powodować, że wszystkie pule aplikacji są przetwarzane ponownie, choć nie jest jasne, dlaczego tak się stanie. Dla jasności nie testowałem, czy faktycznie są one poddawane recyklingowi, czy też jest tylko chwilowa przerwa w ich połączeniu. Czy ktoś jest tego pewien? @ ScottForsyth-MVP?
Richard Hauer
@RichardHauer W pewnym momencie zaczęło się przepisywanie URL-ów, co spowodowało, że appdomain ponownie uruchamia się na poziomie serwera. Kilka lat temu zauważyłem zmianę, ale nie wyśledziłem jej zmiany. Pierwotnie nie miało to miejsca przy zmianach reguł na poziomie globalnym. Jest to więc kłopot, jeśli chodzi o wprowadzanie zmian do globalnych reguł przepisywania. Powodują teraz recykling domeny aplikacji we wszystkich witrynach.
Scott Forsyth - MVP,