Speicherorte der IIS7-Einstellungsdateien

99

Wo speichert IIS7 seine Konfiguration für jedes virtuelle Verzeichnis / jede virtuelle Anwendung und seinen physischen Pfad?

Ist es eine XML-Datei? Wenn ja, wirkt sich die Bearbeitung dieser XML-Datei auf die IIS-Konfiguration aus (nach dem Neustart)?

Royi Namir
quelle

Antworten:

155

Es klingt wie Sie suchen applicationHost.config, die sich in befindet C:\Windows\System32\inetsrv\config.

Ja, es ist eine XML-Datei, und ja, das manuelle Bearbeiten der Datei wirkt sich nach einem Neustart auf die IIS-Konfiguration aus. Sie können sich IIS Manager als GUI-Frontend zum Bearbeiten applicationHost.configund vorstellen web.config.

RickNZ
quelle
Ist die Datei gesperrt? (während des Laufens?) Kann ich es ohne Entsperrung bearbeiten?
Royi Namir
2
Nein, es ist nicht gesperrt. Möglicherweise möchten Sie jedoch eine Kopie erstellen, bevor Sie Änderungen vornehmen.
RickNZ
1
Außerdem zeigt die Datei möglicherweise nicht die tatsächlichen Informationen für den Zugriff ohne Administratorrechte an, wie in dieser Frage
Pavel K,
9
Beim Neustart muss nicht nur IISRESET
Markive
2
Windows Server 2012 R2 scheint keinen Neustart zu erfordern, zumindest wenn neue Anwendungspools und Websites hinzugefügt werden.
James Skemp
55

Überprüfen Sie auch diese Antwort von hier aus: Die Datei applicationhost.config kann nicht manuell bearbeitet werden

Die Antwort ist einfach, wenn nicht so offensichtlich: win2008 ist 64bit, notepad ++ ist 32bit. Wenn Sie mit dem Explorer zu Windows \ System32 \ inetsrv \ config navigieren, verwenden Sie ein 64-Bit-Programm, um die Datei zu finden. Wenn Sie die Datei mit Notepad ++ öffnen, versuchen Sie, sie mit einem 32-Bit-Programm zu öffnen. Die Verwirrung tritt auf, weil Sie in Windows die Datei öffnen können, anstatt Ihnen mitzuteilen, dass Sie dies tun. Wenn Sie sie jedoch speichern, wird der Dateipfad transparent Windows \ SysWOW64 \ inetsrv \ Config zugeordnet.

In der Praxis öffnen Sie also applicationhost.config mit Notepad ++, nehmen eine Änderung vor und speichern die Datei. Anstatt das Original zu überschreiben, speichern Sie eine 32-Bit-Kopie davon in Windows \ SysWOW64 \ inetsrv \ Config. Daher nehmen Sie keine Änderungen an der Version vor, die tatsächlich von IIS verwendet wird. Wenn Sie zu Windows \ SysWOW64 \ inetsrv \ Config navigieren, finden Sie die gerade gespeicherte Datei.

Wie kann man das umgehen? Einfach - Verwenden Sie einen 64-Bit-Texteditor, z. B. den normalen Editor, der mit Windows geliefert wird.

Markiv
quelle
12
Ein anderer Ansatz besteht darin, das administrative c $ zu verwenden, um 32-Bit-Programmen das Lesen / Schreiben zu ermöglichen, als wären sie 64-Bit, da der Windows-Dateifreigabedienst 64-Bit ist: \\yourservername\c$\Windows\System32\inetsrv\config
Tim Lewis
Sie können auch die Informationen von @TimLewis verwenden und Ihren Computernamen verwenden, wenn es sich um Ihren lokalen Computer handelt, den Sie mit einem 32-Bit-Editor bearbeiten möchten.
Hacker
Ich wollte nur beachten, dass Notepad ++ seit einiger Zeit vollständig 64-Bit ist.
Alex