1. Buscar nuestro archivo de configuración:
En Debian, Ubuntu y sus derivados el archivo esta en /etc/apache2/apache2.conf
En CentOS, RedHat y sus derivados el archivo esta en /etc/httpd/conf/httpd.conf
2. Editarlo con vi o nano con permisos de root, según sea el caso.
3. Agregar las siguientes lineas:
<IfModule mod_deflate.c>
SetOutputFilter DEFLATE
# Aqui indicamos lo que no deseamos comprimir
SetEnvIfNoCase Request_URI \.(?:gif|jpe?g|png)$ no-gzip dont-vary
SetEnvIfNoCase Request_URI \.(?:exe|t?gz|zip|bz2|sit|rar)$ no-gzip dont-vary
#Tratando con servidores proxy
<IfModule mod_headers.c>
Header append Vary User-Agent
</IfModule>
</IfModule>
SetOutputFilter DEFLATE
# Aqui indicamos lo que no deseamos comprimir
SetEnvIfNoCase Request_URI \.(?:gif|jpe?g|png)$ no-gzip dont-vary
SetEnvIfNoCase Request_URI \.(?:exe|t?gz|zip|bz2|sit|rar)$ no-gzip dont-vary
#Tratando con servidores proxy
<IfModule mod_headers.c>
Header append Vary User-Agent
</IfModule>
</IfModule>
Guardamos nuestro archivo.
4. Reiniciamos nuestro servidor Web, con algunos de los siguientes comandos de acuerdo a nuestro SO
#CentOS
sudo service httpd restart
sudo ./httpd restart
#Ubuntu
sudo service apache2 restart
sudo ./apache restart
Para comprobar que esta habilitada la compresión podemos ir al siguiente enlace, donde indicamos nuestra URL, esperamos el resultado y en donde dice Compression Status debe mostrarse Compressed (gzip), asi mismo se muestra una comparativa de la compresión de nuestro sitio.
Si el enlace anterior no funciona (compresscheck.asp), podemos utilizar GzipTest, que es una herramienta gratuita. La siguiente imagen nos muestra el mensaje que se indicaría si tenemos habilitada la comprensión:
Nota:
Estos pasos se podrán realizar siempre y cuando tengamos acceso a la configuración de nuestro servidor