Emplacements des fichiers de paramètres IIS7

99

Où IIS7 enregistre-t-il sa configuration pour chaque répertoire / application virtuel et son chemin physique?

Est-ce un fichier XML? Et si tel est le cas, la modification de ce fichier XML affectera-t-elle la configuration IIS (après le redémarrage)?

Royi Namir
la source

Réponses:

155

On dirait que vous recherchez applicationHost.config, qui se trouve dansC:\Windows\System32\inetsrv\config .

Oui, c'est un fichier XML, et oui, l'édition manuelle du fichier affectera la configuration IIS après un redémarrage. Vous pouvez considérer IIS Manager comme une interface graphique pour l'édition applicationHost.configet les fichiers web.config.

RickNZ
la source
Le fichier est-il verrouillé? (pendant l'exécution?) Puis-je le modifier sans aucun déverrouillage?
Royi Namir
2
Non, ce n'est pas verrouillé. Cependant, vous voudrez peut-être en faire une copie avant d'effectuer des modifications.
RickNZ
1
De plus, le fichier peut ne pas afficher les informations réelles pour l'accès non-administrateur, comme expliqué dans cette question et un commentaire sur une réponse
Pavel K
9
Au redémarrage, il faut un redémarrage complet de Windows, pas seulement IISRESET
Markive
2
Windows Server 2012 R2 ne semble pas nécessiter de redémarrage, du moins lors de l'ajout de nouveaux pools d'applications et sites Web.
James Skemp
55

Vérifiez également cette réponse à partir d'ici: Impossible de modifier manuellement applicationhost.config

La réponse est simple, sinon si évidente: win2008 est en 64 bits, notepad ++ en 32 bits. Lorsque vous accédez à Windows \ System32 \ inetsrv \ config à l'aide de l'explorateur, vous utilisez un programme 64 bits pour trouver le fichier. Lorsque vous ouvrez le fichier à l'aide de notepad ++, vous essayez de l'ouvrir à l'aide d'un programme 32 bits. La confusion se produit car, plutôt que de vous dire que c'est ce que vous faites, Windows vous permet d'ouvrir le fichier mais lorsque vous l'enregistrez, le chemin du fichier est mappé de manière transparente vers Windows \ SysWOW64 \ inetsrv \ Config.

Donc, en pratique, vous ouvrez applicationhost.config en utilisant notepad ++, faites une modification, enregistrez le fichier; mais plutôt que d'écraser l'original, vous enregistrez une copie 32 bits de celui-ci dans Windows \ SysWOW64 \ inetsrv \ Config, par conséquent, vous ne modifiez pas la version qui est réellement utilisée par IIS. Si vous accédez à Windows \ SysWOW64 \ inetsrv \ Config, vous trouverez le fichier que vous venez d'enregistrer.

Comment contourner cela? Simple - utilisez un éditeur de texte 64 bits, tel que le bloc-notes normal fourni avec Windows.

Markive
la source
12
Une autre approche consiste à utiliser le c $ administratif pour permettre aux programmes 32 bits de lire / écrire comme s'ils étaient 64 bits puisque le service de partage de fichiers Windows est 64 bits: \\yourservername\c$\Windows\System32\inetsrv\config
Tim Lewis
Vous pouvez également utiliser les informations de @TimLewis et utiliser le nom de votre machine si c'est votre machine locale que vous souhaitez modifier avec un éditeur 32 bits.
hacker
Je voulais juste noter que Notepad ++ est entièrement 64 bits depuis un moment maintenant.
Alex