So I am trying to get a classic ASP server running on IIS7 under Win2008 x64. The application relies on a number of 32-bit ActiveX controls, so I need to keep it in 32-bit application pool.
This all seems pretty easy. I have all of the ASP support installed. My controls are registered. I've adjusted some of the "gotcha" settings for moving to IIS7. I am using a separate site for my testing with its own application pool, and I can actually
get the application going in x64 mode. I can load static content, but of course it crashes as soon as it tries to load one of my ActiveX controls, because it isn't registered.
SINCE everything appears to be working correctly, I figured that that only real change here was to set the application pool's enable32BitAppOnWin64 to true... right? Well when I do that, nothing works at all. I receive a 500.19 0x8007007e error for ANY
request...even static content.
The error message says "The requested page cannot be accessed because the related configuration data for the page is invalid." The error code means "The module cannot be found". The DynamicCompressionModule is the source of the error every time for any
handler.
I traced the errors, and got the following information from both compression modules. I figured that I would just try to disable them as a workaround for now, but every time I try, I get a "lock violation", so I guess I'm going to try to troubleshoot now!
AHHH... we're on the right track now. WSUS is installed on this server (SharePoint, too, actually), but I was blindly thinking that they didn't interact since they are in different application pools and such. I see now that I dont' have a copy of the 32-bit
suscomp.dll (they should really provide that if they are going to configure it in IIS at the server level).
So the question is, how do I get rid of that compression scheme for a particular site? I don't see this exposed in the IIS Manager.
Schemes are registered globally - maybe, you can find the 32-bit suscomp.dll from 32-bit install of WSUS - otherwise, disabling this compression scheme should not break WSUS - probably only slow it down because responses are not compressed.
Anil Ruia
Software Design Engineer
IIS Core Server
%windir%\system32\inetsrv\appcmd.exe set config -section:system.webServer/httpCompression /+[name='xpress',doStaticCompression='false',dll='%windir%\system32\inetsrv\suscomp.dll']
Anil Ruia
Software Design Engineer
IIS Core Server
JoelDKraft
12 Posts
500.19 Error When Enabling 32-bit Application Pool
Jun 08, 2008 06:24 PM|LINK
So I am trying to get a classic ASP server running on IIS7 under Win2008 x64. The application relies on a number of 32-bit ActiveX controls, so I need to keep it in 32-bit application pool.
This all seems pretty easy. I have all of the ASP support installed. My controls are registered. I've adjusted some of the "gotcha" settings for moving to IIS7. I am using a separate site for my testing with its own application pool, and I can actually get the application going in x64 mode. I can load static content, but of course it crashes as soon as it tries to load one of my ActiveX controls, because it isn't registered.
SINCE everything appears to be working correctly, I figured that that only real change here was to set the application pool's enable32BitAppOnWin64 to true... right? Well when I do that, nothing works at all. I receive a 500.19 0x8007007e error for ANY request...even static content.
The error message says "The requested page cannot be accessed because the related configuration data for the page is invalid." The error code means "The module cannot be found". The DynamicCompressionModule is the source of the error every time for any handler.
I traced the errors, and got the following information from both compression modules. I figured that I would just try to disable them as a workaround for now, but every time I try, I get a "lock violation", so I guess I'm going to try to troubleshoot now!
Any insights?
Thanks,
Joel
anilr
2343 Posts
Microsoft
Re: 500.19 Error When Enabling 32-bit Application Pool
Jun 09, 2008 05:37 AM|LINK
What are the outputs of the following commands (from an elevated command prompt)?
%windir%\system32\inetsrv\appcmd.exe list config -section:system.webServer/httpCompression
dir %windir%\syswow64\inetsrv\gzip.dll
Software Design Engineer
IIS Core Server
JoelDKraft
12 Posts
Re: 500.19 Error When Enabling 32-bit Application Pool
Jun 09, 2008 12:05 PM|LINK
Here you go!
Joel
<system.webServer>
<httpCompression directory="%SystemDrive%\inetpub\temp\IIS Temporary Compressed Files">
<staticTypes>
<add mimeType="text/*" enabled="true" />
<add mimeType="message/*" enabled="true" />
<add mimeType="application/javascript" enabled="true" />
<add mimeType="*/*" enabled="false" />
</staticTypes>
<dynamicTypes>
<add mimeType="text/*" enabled="true" />
<add mimeType="message/*" enabled="true" />
<add mimeType="application/x-javascript" enabled="true" />
<add mimeType="*/*" enabled="false" />
</dynamicTypes>
<scheme name="gzip" dll="%Windir%\system32\inetsrv\gzip.dll" />
<scheme name="xpress" doStaticCompression="false" doDynamicCompression="true" dll="C:\Windows\system32\inetsrv\suscomp.dll" staticCompressionLevel="10" dynamicCompressionLevel="0" />
</httpCompression>
</system.webServer>
Directory of C:\Windows\syswow64\inetsrv
01/19/2008 09:53 AM 27,136 gzip.dll
1 File(s) 27,136 bytes
0 Dir(s) 27,683,934,208 bytes free
JoelDKraft
12 Posts
Re: 500.19 Error When Enabling 32-bit Application Pool
Jun 09, 2008 12:26 PM|LINK
AHHH... we're on the right track now. WSUS is installed on this server (SharePoint, too, actually), but I was blindly thinking that they didn't interact since they are in different application pools and such. I see now that I dont' have a copy of the 32-bit suscomp.dll (they should really provide that if they are going to configure it in IIS at the server level).
So the question is, how do I get rid of that compression scheme for a particular site? I don't see this exposed in the IIS Manager.
Joel
anilr
2343 Posts
Microsoft
Re: 500.19 Error When Enabling 32-bit Application Pool
Jun 09, 2008 04:08 PM|LINK
You cannot get rid of it for that site - compression schemes are registered globally - to get rid of the scheme altogether, run below
%windir%\system32\inetsrv\appcmd.exe set config -section:system.webServer/httpCompression /-[name='xpress']
Software Design Engineer
IIS Core Server
JoelDKraft
12 Posts
Re: 500.19 Error When Enabling 32-bit Application Pool
Jun 09, 2008 06:10 PM|LINK
Hmm... does that disable the compression scheme completely for the server?? I don't want to do anything that might interfere with WSUS.
Is it possible to remove it on a per-site basis?
anilr
2343 Posts
Microsoft
Re: 500.19 Error When Enabling 32-bit Application Pool
Jun 09, 2008 07:45 PM|LINK
Schemes are registered globally - maybe, you can find the 32-bit suscomp.dll from 32-bit install of WSUS - otherwise, disabling this compression scheme should not break WSUS - probably only slow it down because responses are not compressed.
Software Design Engineer
IIS Core Server
JoelDKraft
12 Posts
Re: 500.19 Error When Enabling 32-bit Application Pool
Jun 09, 2008 09:13 PM|LINK
I actually do have a copy of the 32bit DLL.
Thanks!
baijuputhoor
3 Posts
Re: 500.19 Error When Enabling 32-bit Application Pool
Jun 12, 2008 11:39 AM|LINK
How can we enable the scheme again if needed? can you give the command for that?
anilr
2343 Posts
Microsoft
Re: 500.19 Error When Enabling 32-bit Application Pool
Jun 12, 2008 05:16 PM|LINK
%windir%\system32\inetsrv\appcmd.exe set config -section:system.webServer/httpCompression /+[name='xpress',doStaticCompression='false',dll='%windir%\system32\inetsrv\suscomp.dll']
Software Design Engineer
IIS Core Server