views:

21

answers:

1

I get them theoretically, but I'm grappling with gzipping files in practice. How should I go about gzip compressing my files, and what needs to be done in order to use them on a shared host?

Would the following work?

RewriteEngine On
RewriteBase /
RewriteCond %{HTTP:Accept-Encoding} .*gzip.*
RewriteRule ^/(.*)\.js$ /$1.js.gz [L]
RewriteRule ^/(.*)\.css$ /$1.css.gz [L]
AddEncoding x-gzip text.gz
+1  A: 

You're probably going to have trouble with the MIME type of the decompressed content still being application/gzip-compressed rather than text/css or text/javascript.

What is your purpose in doing this? If you just want to cut down on network transfers, you should do that using mod_deflate, eg.:

AddOutputFilterByType DEFLATE text/css text/javascript

and let Apache worry about compressing the transfers themselves on the fly. Otherwise browsers that can't negotiate gzip will be stuck.

I would hope a decent shared host would have already set compression for you. Use an online tool to check whether your stylesheets are being served compressed.

bobince
Is this on by default, or do I have to add that somewhere specific, like in the php.ini file?
Matrym
It goes in `httpd.conf`, `.htaccess` or wherever else you put Apache config. It's not on by default but I would expect shared hosts to enable it in their setups.
bobince