Wird das Ändern von applicationHost.config einen Neustart von IIS7 verursachen?

10

Wenn ich die Datei ändere:

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

und aktualisieren Sie es mit einer Änderung, die zu einer gültigen Konfiguration führt. Wird IIS7 neu gestartet und alle Apps neu gestartet?

Ich probiere dies mit einem heiß geklonten VM des Servers aus, möchte aber wissen, ob das erwartete Ergebnis sein sollte, wenn jemand Erfahrung mit einem dieser Szenarien hat.

Danke vielmals

Kenny
quelle
1
Wenn das Format der Konfigurationsdatei falsch ist, wird der Server tatsächlich beschädigt.
Kenny

Antworten:

11

Ich habe erst letzte Woche ein kurzes Video dazu zusammengestellt. Es behandelt die Unterschiede zwischen AppDomains und AppPools und die Ursachen von Recycling. Ich gehe verschiedene Einstellungsänderungen durch, die zu vollständigen Recyclings und AppDomain-Recyclings führen. Ich beschreibe auch, wie Sie feststellen können, ob ein Recycling stattfindet und welche Auswirkungen dies hat.

Die kurze Antwort ist, dass es darauf ankommt. Das 'Berühren' von applicationHost.config selbst führt zu keiner Wiederverwertung, bestimmte Konfigurationsänderungen jedoch. Jede Änderung an .NETs machine.config oder root web.config führt zu einem AppDomain-Recycling auf dem Server für diese Framework-Version. Jede Änderung an der web.config einer Site führt zu einem AppDomain-Recycling für diese Site.

Scott Forsyth - MVP
quelle
2
Exzellentes Video und Erklärung.
Osij2ist
3

Wenn Sie die Eigenschaften des App-Pools bearbeiten, sollten die App-Pools wiederverwendet werden (standardmäßig, sofern nicht disallowrotationonconfigchange festgelegt ist oder das heutige Äquivalent).

Andernfalls führen keine mir vorstellbaren system.webServer-Änderungen zu einem Neustart der App-Pools.

Das Ändern von web.config-Werten kann jedoch dazu führen, dass die Apps neu gestartet werden (die AppDomains), wenn Sie .Net verwenden.

Siehe auch: http://forums.asp.net/p/1344814/2742551.aspx

TristanK
quelle
+1 für eine ziemlich tote Antwort. Ein Kommentar ist, dass das Berühren von web.config immer zu einem Recycling der App-Domäne führt.
Scott Forsyth - MVP
Bedeutet dies, dass ich einen Host-Header hinzufügen könnte, ohne einen Neustart auszulösen?
mcintyre321
@ mcintyre321 Richtig. Eine Änderung des Host-Headers führt nicht zu einem AppDomain-Recycling.
Scott Forsyth - MVP
Das Ändern der globalen Umschreiberegeln in applicationHost -> configuration -> rewrite scheint dazu zu führen, dass alle App-Pools wiederverwendet werden, obwohl nicht klar ist, warum dies passieren würde. Aus Gründen der Übersichtlichkeit habe ich nicht getestet, ob sie tatsächlich recycelt werden oder ob ihre Verbindung nur vorübergehend unterbrochen wird. Weiß jemand sicher? @ ScottForsyth-MVP?
Richard Hauer
@RichardHauer Irgendwann verursachte URL Rewrite auch auf Serverebene Recycling von Appdomains. Ich habe die Verschiebung vor ein paar Jahren bemerkt, aber ich habe sie nicht gefunden, als sie gewechselt hat. Ursprünglich war dies bei Regeländerungen auf globaler Ebene nicht der Fall. Das ist ein Mist, wenn es darum geht, Änderungen an globalen Umschreiberegeln vorzunehmen. Sie bewirken jetzt, dass eine App-Domain auf allen Websites recycelt wird.
Scott Forsyth - MVP