Enable gzip compression

Discussion in 'Installation/Configuration' started by Mosquito, Nov 17, 2010.

  1. Mosquito

    Mosquito New Member

    I've been using Google's web master tools and I keep getting the suggestion to enable gzip compression on my domains. How can I do this through ISPConfig?

    I'm running 3.0.3.
  2. falko

    falko Super Moderator Howtoforge Staff

  3. cbj4074

    cbj4074 Member

    I, too, wondered how to enable GZIP compression in Apache on Debian (Ubuntu 10.04). Here are my findings.

    1.) Add directives to Apache configuration, e.g., to /etc/apache2/httpd.conf:

    <IfModule mod_deflate.c>
    <Location />
    # Insert filter
    SetOutputFilter DEFLATE
    # Netscape 4.x has some problems...
    BrowserMatch ^Mozilla/4 gzip-only-text/html
    # Netscape 4.06-4.08 have some more problems
    BrowserMatch ^Mozilla/4\.0[678] no-gzip
    # MSIE masquerades as Netscape, but it is fine
    BrowserMatch \bMSIE !no-gzip !gzip-only-text/html
    # NOTE: Due to a bug in mod_setenvif up to Apache 2.0.48
    # the above regex won't work. You can use the following
    # workaround to get the desired effect:
    # BrowserMatch \bMSI[E] !no-gzip !gzip-only-text/html
    # Don't compress images
    SetEnvIfNoCase Request_URI \
    \.(?:gif|jpe?g|png)$ no-gzip dont-vary
    # Make sure proxies don't deliver the wrong content
    Header append Vary User-Agent env=!dont-vary
    Note: For versions of Apache <= 2.0.48, read the comments carefully; it is necessary to un-comment the last BrowserMatch directive.

    Note: This above block comes straight from the Apache documentation.

    2.) Enable the required modules; both mod_deflate and mod_headers are required. (mod_headers is required for the last directive in the above snippet.)

    # a2enmod deflate
    # a2enmod headers
    # service apache2 restart
    Pages should now be served with GZIP compression. There are a number of utilities with which to test, e.g., http://www.whatsmyip.org/http-compression-test/ .

    Good luck!
  4. Kátia

    Kátia New Member

    And how I do this using Nginx?

Share This Page