问题
We have a webserver hosted in Microsoft Azure. It's a Windows Server 2008 R2 Datacenter edition, 64 bit.
For a website hosted on this machine, I need to make changes to the applicationhost.config file. However, changes I made to IIS recently are not shown in the config. I've added a new application pool and added this specific website to that application pool. I restarted the website, the 'Date Modified' of the file is updated, but the application pool is not present.
Right now I'm editing the file in C:\Windows\System32\inetsrv\config
, but there's also one in C:\Windows\SysWOW64\inetsrv\Config
, but the latter hasn't updated for months.
Am I looking at the wrong file? Are changes not saved right away? Do I need to restart IIS completely and not just the relevant website?
回答1:
The real issue is that there are two inetsvr directories, one for 32 bits and another for 64 bits. The 32 bits 'version', probably dormant and not updated, is under SysWOW64 !!!
When you open a file on %SystemDrive%\Windows\System32\inetsrv
using a 32bits application, Windows will redirect you, with no warning, to %SystemDrive%\Windows\SysWOW64\inetsrv
possible a very obsolete file. Interesting no?
Using a 64bits editor like Notepad++ will open the 'right' active configuration file.
The following hack will make the (active) 64 bits location, accessible from 32 bits apps (for example, some Visual Studio versions).
cd /d "%SystemDrive%\Windows\SysWOW64\inetsrv"
move Config Config.OLD
mklink /d Config "%SystemDrive%\Windows\System32\inetsrv\Config"
回答2:
The solution was to restart IIS as @RickStrahl
mentioned, but even though it seems you can properly open and edit the applicationHost.config
with Notepad++ or the Visual Studio installed on the server and configured to open .config
files, it's not actually showing you the correct content!.
I installed Notepad2 x64
and then I could see the application pool I was looking for.
Bloody brilliant Microsoft... :[
来源:https://stackoverflow.com/questions/36641621/applicationhost-config-not-showing-changes