Check GZip Encoding with curl
Last week I detailed how I enabled gzip encoding on nginx servers, the same server software I use on this site. Enabling gzip on your server exponentially improves the site load time, thus improving user experience and (hopefully) Google page ranks. I implemented said strategy and used another website to check if the gzip encoding worked, but little did I know, you can use the curl utility check if the encoding update worked. Here's how you can check if the gzip encoding worked:
curl -H "Accept-Encoding: gzip" -I https://davidwalsh.name
After executing the shell command, you'll get a response that looks like this:
HTTP/1.1 200 OK Server: nginx Date: Mon, 21 Jul 2014 01:12:36 GMT Content-Type: text/html; charset=UTF-8 Content-Length: 20 Connection: keep-alive X-Pingback: https://davidwalsh.name/xmlrpc.php Cache-Control: max-age=1, private, must-revalidate Expires: Mon, 21 Jul 2014 01:12:37 GMT X-Powered-By: PleskLin MS-Author-Via: DAV Vary: Accept-Encoding Content-Encoding: gzip
From the above response, you can see that the page was served gzipped via the Content-Encoding: gzip
header. You can check individual files instead of pages to ensure they have been gzipped as well. The amount of effort you put into gzipping your site is worth it -- imagine how fast it makes your site to the thousands and millions of visitors you have each day!
You can also use the
--compressed
flag.Another great tool is: http://checkgzipcompression.com/
Same thing but a very pretty graphic output.
You can also try this:
To be able to see “text” data from gzipped content use the following (as found here https://stackoverflow.com/a/18984239/571227)
This didn’t work for me. It worked for some sites, but not for others that I knew for sure, had gzip enabled. The problem is the
-I
option. It sends a HEAD request. Try this, it worked with all sites:https://stackoverflow.com/a/26644485/960857