How To: Enable ASPX Compression in IIS (Part 1)
Big thanks and credit to Donny Mack from dotnetjunkies.com.
HTTP compression provides faster transmission time between compression-enabled browsers (IE, Firefox) and IIS. You can either compress static files alone, or both static files and applications. If your network bandwidth is restricted, consider HTTP compression, at least for static files, unless your processor utilization is already extremely high.
This step-by-step article describes how to configure IIS to compress .aspx pages. You add the compression functionality for .aspx files by editing the IIS metabase. Please note - configuration described here is undocumented - so use at your own risk.
- Go to web sites >> properties >> service tab. If you have performed upgrade to Windows 2003 from Windows 2000 server - you would get here: "run IIS service in 5.0 isolation mode". Clear this checkbox, check the other two down there in “compression” section. This way we enable compression.
- Now we create application pools in application pools node – each application (virtual directory) we put into its own application pool (via virtual directory properties).
- Need to check that each pool runs under network service: pool >> properties >> identity - radio predefined. Pay special attention to the following: those of you who gave permissions to aspnet user to do whatever – this user will not work, because now there may be several processes running concurrently and you have to give permissions to IIS_WPG group instead from now on. The same is true concerning sql connections to the database - aspnet user will not work, so – for each database – create its own user.
- Go to Web Service Extensions – right panel – right mouse click - add a new web service extension, in the opened dialog write into the field of extension name: HTTP Compression, browse for the following dll in required files: %windows%\inetsrv\gzip.dll. check status allowed.
- Now take care of metabase, speaking of which the whole IIS configuration is stored in %windows%\inetsrv\metabase.xml, so create a backup !
Sunday, April 4, 2004 7:59 AM