Enabling JavaScript GZIP compression in IIS?

15,977

Solution 1

Turns out it's really easy:

  1. Go into IIS Manager
  2. Go to the site in question
  3. Go to 'Compression' (under IIS) and double-click on it
  4. Ensure that 'Enable static compression' is enabled.

Simple as that!

The only issues come with dynamically generated content, but I'm not interested in compressing that, so this is my answer. (Can't believe it was so easy... the other guides made it look like a nightmare!)

Solution 2

'Enable static compression' didn't work for me at first.

I found that when I had these lines in my web.config file of my website between <system.webserver> it works:

<staticContent>
  <remove fileExtension=".js" />
  <mimeMap fileExtension=".js" mimeType="text/javascript" />
</staticContent>

But I have to set it in each of my web.config file and if I have a PHP website running in IIS compression is not working, also, it seems to not work for my HMTL since I get (in ySlow) :

Grade C on Compress components with gzip

There are 2 plain text components that should be sent compressed

* http://www.ville.st-augustin.qc.ca/
* http://jquery-ui.googlecode.com/svn/tags/1.8/ui/minified/jquery.effects.core.min.js

Solution 3

Be sure to check that your JavaScript files are actually being compressed when you simply enable static content compression. In our scenario this was not the case. This article gives a nice overview why, Getting IIS 7 to Compress JavaScript, and in the comments @Doug Mayer recommends enabling dynamic content compression, which did work for us.

So the steps are:

  1. In IIS Manager
  2. Select the desired level, server, web application, folder
  3. Open Compression under IIS
  4. Check 'Enable dynamic content compression'
  5. Apply

If this option is greyed out, you must first add the server role service 'Dynamic Content Compression' under Web Server | Performance in Server Manager.

Share:
15,977
Chuck Le Butt
Author by

Chuck Le Butt

Hello.

Updated on June 17, 2022

Comments

  • Chuck Le Butt
    Chuck Le Butt almost 2 years

    we're looking to compress our gargantuan JavaScript files with GZip to speed up the page loads of our site. I know this can be done through IIS, but I can't seem to find a simple step-by-step guide on how to implement it.

    If someone could point me towards such a guide, I'd really appreciate it. I've never done this before, so it would need to be quite basic.

    We're running IIS7.5 on Windows Server 2008 R2.

    Your time is much appreciated.