Enable Gzip in Amazon Linux

To verify Apache module is loaded, run

[root@ip-172-31-29-220 ~]# apachectl -M | grep deflate
 deflate_module (shared)
[root@ip-172-31-29-220 ~]# 

Create file

vi /etc/httpd/conf.d/gzip.conf

Add following content


  # Restrict compression to these MIME types
  AddOutputFilterByType DEFLATE text/plain
  AddOutputFilterByType DEFLATE text/html
  AddOutputFilterByType DEFLATE application/xhtml+xml
  AddOutputFilterByType DEFLATE text/xml
  AddOutputFilterByType DEFLATE application/xml
  AddOutputFilterByType DEFLATE application/xml+rss
  AddOutputFilterByType DEFLATE application/x-javascript
  AddOutputFilterByType DEFLATE text/javascript
  AddOutputFilterByType DEFLATE text/css
  AddOutputFilterByType DEFLATE image/png
  AddOutputFilterByType DEFLATE image/gif
  AddOutputFilterByType DEFLATE image/jpeg

  # Level of compression (Highest 9 - Lowest 1)
  DeflateCompressionLevel 9

  # 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 \bMSI[E] !no-gzip !gzip-only-text/html

  
    # Make sure proxies don't deliver the wrong content
    Header append Vary User-Agent env=!dont-vary
  

Restart Apache with

service httpd restart

To verify gzip is working, run

curl -I -H 'Accept-Encoding: gzip,deflate' http://YOUR-SITE-URL/ 2>/dev/null | grep gzip

You will see something like

NOTE: gzip compression only works if you have a reasonably large file. If your file is very small, then gzip won’t do anything.

See gzip

Comments

Leave a Reply

Your email address will not be published. Required fields are marked *