When you are installing WSUS, you can choose either installing WSUS on the Default Web Site or on a new Web Site.
The Scenario: Windows server 2008 R2 x64 with IIS 7.5, Default Web Site already has some Application deployed.
Ok, so your “dedicated” WSUS server already got some IIS application on it and yet, what with WSUS ? well.. you can choose in the wizard to install the WSUS on a new site with other port then the default 80 – port 8530 .
Everything goes fine and the WSUS is working perfectly. Oops – we have a problem ! – the application in the Default Web Site is not working anymore.
When you browse to the application you get Error 500.19 with the following details:
HTTP Error 500.19 – Internal Server Error
The requested page cannot be accessed because the related configuration data for the page is invalid. Module DynamicCompressionModule
Notification SendResponse
Handler StaticFile
Error Code 0x8007007e
Requested URL http://localhost:80/
Physical Path <some Path>
Logon Method Anonymous
Logon User Anonymous
To resolve this situation, review the ApplicationHost.config (locate it in under C:\windows\inetsrv\config). In the ApplicationHost.config find these lines :
<scheme name=”xpress” doStaticCompression=”false” doDynamicCompression=”true”
dll=”C:\Windows\system32\inetsrv\suscomp.dll” staticCompressionLevel=”10″
dynamicCompressionLevel=”0″ />
Found it ? okay, it’s time to deal the situation. run this executable with the following parameters: %windir%\system32\inetsrv\appcmd.exe set config -section:system.webServer/httpCompression /-[name=’xpress’]
This command will disable the suscomp.dll which is being installed by the WSUS. the compression schemes are defined globally and loaded in every application Pool. when WSUS x64 register this dll it will result this error when x64 version of suscomp.dll attempts to load in an application pool which is running in x32 mode.
If, from some any reason you want to enable the compression again, run this command : %windir%\system32\inetsrv\appcmd.exe set config -section:system.webServer/httpCompression /+[name=’xpress’,doStaticCompression=’false’,dll=’%windir%\system32\inetsrv\suscomp.dll’]
Thanks for this! Just saved my WSUS server setup!!!
Thanks man.u saved my life :))
Thanks as well. with all the nonsense this migration to 2008 R2 has been at least something is now working. Now only if trendmicro wouldn’t write such a combobulated administation interface (IIS+java+tomcat+php)
Thank you soo much. Switching to 64 bit is painful
Thanks for this wonderful post. What a pain in the ass and how the hell did you find out about this?
I wonder though why Microsoft doesn’t know of a way to prevent this from happening (or edits the applicationhost.config themselves).
Another WSUS server saved by this article, thanks a lot!
THANK YOU!!!!!
Thanks you sir!!!
Thanks for the write-up! Saved my WSUS installation from being revoked!
WOW! A little gem here!
How is this allow to be there by default in first place is beyond my understanding
Thanks for this!
Thank you, your info was spot on allowing me to sort out my issue, much appriciated.
Top
Thank You…..worked for Dell OpenManage Essentials, appreciate it….
Hey, thanks for sharing – I only wish I’d found your post earlier.
Awesome! Thank you sooooo much, hours of troubleshooting no more!
im new at this, where and how do you run this executable? do you configure the ApplicationHost.config? and if so where/how? i apologize for my ignorance.
I hope the Info I gave you in mail helped you.
Thank You!!!!!! You saved me. Wish i would have found this post hours ago!
Was minutes away from removing the wsus role and finding another server. Saved me a considerable amount of time and hassle. Thanks, worked perfectly.
how to run %windir%\system32\inetsrv\appcmd.exe set config -section:system.webServer/httpCompression /-[name=’xpress’]
is it on command line or what?
Yes. this is the command..
Thanks for writing this information. My Windows Server 2012 Essentials box succumbed to a WSUS install then uninstall due to the change in the config file. Your article resolved the issue
For reference in Windows 2012 the path to ApplicationHost.config is C:\Windows\System32\inetsrv\config
Paul
Thanks a lot…this works!
THANK YOU!!!!!!!! This is a life saver article!
You just saved my tush on installing WSUS over our app server. Granted, it was my own lazy butt who got into this mess, but luckily your great instructions were up to save me from myself! Thanks!
This article saved me,too. Thank You!
Thank you, you fixed my hosed IIS.
Warm regards,
Borry Katut.
Thanks a lot it saved my day. I am very grateful for this info.
Hi cipher, open DOS Window as Administrator and go to: %windir%\system32\inetsrv apply there
appcmd.exe set config -section:system.webServer/httpCompression /-[name=’xpress’]
I have to tell you that it isn’t hard to find your posts in google.
Saved also a lot of time ! THANKS !
but how the f*** did you figured this out…..
Awesome! Thanks for the tip mate, worked a treat and saved me spending a lot more hours on this again. Wished I’d found it earlier but was at my wits end. Great job Sir!
Awesome explanation and article. Saved me time with having to research other meaningless blogs. Straight to the point with the fix which is appreciated.
I cant thank You enough! Tanks You so much, for providing the solution!
Thanks a lot Sharon….Thank you!
I was wondering if you could help me out. I followed your instructions and found these lines . . .
So I ran this command . . .
%windir%\system32\inetsrv\appcmd.exe set config -section:system.webServer/httpCompression /-[name=’xpress’]
but I get this . . .
ERROR ( message:Malformed collection indexer; format is [@position,name=’value’,name2=’value2′,…]. The @position specifier is optional, and be ‘@start’, ‘@end’, or ‘@N’ where N is a numeric index into the collection. )
Not sure what I’m doing wrong. Your help would be appreciated. Thanks!
Hey,
Did you check this: http://forums.iis.net/t/1181607.aspx
?
Can someone help me? I’ve been trying to make it work, but keep telling me:
ERROR ( message:Malformed collection indexer; format is [@position,name=’value’,name2=’value2′,…]. The @position specifier is optional, and be ‘@start’, ‘@end’, or ‘@N’ where N is a numeric index into the collection. )
I’ve also stoped the IIS service and remove the entry:
Restarted the IIS, but the error is the same…
HTTP Error 500.19 – Internal Server Error
The requested page cannot be accessed because the related configuration data for the page is invalid. Module DynamicCompressionModule
Notification SendResponse
Handler PerlEx
Error Code 0x8007007e
Thanks In advance!
Sorry it doesn’t shows the entry:
scheme name=”xpress” doStaticCompression=”false” doDynamicCompression=”true” dll=”C:\Windows\system32\inetsrv\suscomp.dll” staticCompressionLevel=”10″ dynamicCompressionLevel=”0″
The command is:
%windir%\system32\inetsrv\appcmd.exe set config -section:system.webServer/httpCompression /-[name=’xpress’]
Thanks in advance!
Can someone help me? I’ve been trying to make it work, but keep telling me:
Command:
%windir%\system32\inetsrv\appcmd.exe set config -section:system.webServer/httpCompression /-[name=’xpress’]
Result:
ERROR ( message:Malformed collection indexer; format is [@position,name=’value’,name2=’value2′,…]. The @position specifier is optional, and be ‘@start’, ‘@end’, or ‘@N’ where N is a numeric index into the collection. )
I’ve also stoped the IIS service and remove the entry:
scheme name=”xpress” doStaticCompression=”false” doDynamicCompression=”true” dll=”C:\Windows\system32\inetsrv\suscomp.dll” staticCompressionLevel=”10″ dynamicCompressionLevel=”0″
Restarted the IIS, but the error is the same…
HTTP Error 500.19 – Internal Server Error
The requested page cannot be accessed because the related configuration data for the page is invalid. Module DynamicCompressionModule
Notification SendResponse
Handler PerlEx
Error Code 0x8007007e
Thanks In advance!
I get the same error:
ERROR ( message:Malformed collection indexer; format is [@position,name=’value’,name2=’value2′,…]. The @position specifier is optional, and be ‘@start’, ‘@end’, or ‘@N’ where N is a numeric index into the collection. )
Can please somebody help me? 🙁
Thanks
Just as a general FYI to anyone reading this, error 500 means that there was an issue between some connecting systems on the host you are trying to connect to. For example, this can be an issue between a web browser and a database.
Thanks i almost give up. You saved my honor 🙂
We will see!
Thank you for the article / write-up! It looks like this resolved are WSUS setup!
We are just setting up WSUS and it kept turning the node off (weird, that the service kept running and restarting the service did nothing…). Restarted the server it worked for a couple minutes and then boom again….
Looking good so far! THANK YOU!
One should look in the site’s config file and compare it with applicationHost or web.config file at a higher level to check for duplicate entries as pointed by the error message. You can either remove this entry to make the server run again, or make the entry non-duplicate by changing the collection key.
you are Great……
This error happened to me also. I had to restore the ApplicationHost.config file from a backup. It broke several IIS apps.
First off a big THANKS to Sharon for writing this up! Once it ran successfully my website started working.
Next, to the users getting an error when running the command. I was getting an error when I did a copy from this page and pasted it into my command prompt…
C:\Windows\System32\inetsrv>appcmd.exe set config -section:system.webServer/httpCompression /-[name=’xpress’]
ERROR ( message:Malformed collection indexer; format is [@position,name=’value’,name2=’value2′,…]. The @position specifier is optional, and be ‘@start’, ‘@end’, or ‘@N’ where N is a numeric index into the collection. )
BUT, when I typed the command in it completed successfully and my website came up like it should.
C:\Windows\System32\inetsrv>appcmd.exe set config -section:system.webServer/httpCompression /-[name=’xpress’]
Applied configuration changes to section “system.webServer/httpCompression” for “MACHINE/WEBROOT/APPHOST” at configuration commit path “MACHINE/WEBROOT/APPHOST”
Thanks for the article!
I recently removed WSUS role from SCCM server (since I didn’t need that). Turns out entry related to the nonexistent DLL file was still in the .config. I removed the line, did IISRESET and didn’t get any 500.19s anymore.
Thank you sir. I was getting this error after I REMOVED my WSUS role from my SCCM DP. This fixed it right up. Much appreciated!