> Manuales > Optimización de un sitio web con compresión GZIP

Optimizar la descarga de una página PHP por medio de la compresión GZIP. Enviar el código de la página comprimido al cliente.

La compresión por GZIP o Deflate es una buena técnica para liberar de peso, en KB, a las páginas web. No resulta nada complicada si sabemos cómo configurarla y las ventajas son muy representativas. En los anteriores artículos del Manual de Optimización con GZIP ya hemos explicado bien en qué consiste y cuáles son las ventajas de utilizar estos métodos de compresión.

Depende de nosotros, o de la configuración de nuestro servidor web, que se envíen o no los archivos comprimidos a los clientes que lo solicitan, así que un primer paso para cualquier persona interesada en optimizar su web sería comprobar si las páginas de su sitio web se están enviando comprimidas .

En este artículo veremos una de las primeras configuraciones que podemos hacer con suma facilidad y en minutos sobre nuestro sitio web, para que las páginas PHP de nuestro sitio se envíen comprimidas. Se trata de la edición del archivo .htaccess para configurar Apache y hacer que los archivos PHP se compriman con GZIP antes de enviarse al cliente.

Nota: Claro que estas notas serán sólo útiles para sitios con programación PHP que corran sobre el servidor web Apache, pues los archivos htaccess son ficheros de texto que sirven para configurar Apache. Puedes ver la FAQ Qué es HTACCESS, donde encontrarás algunas explicaciones básicas sobre ese archivo y referencias para su configuración.

Código htaccess para comprimir las páginas PHP

Ahora veamos un sencillo código fuente que podemos utilizar para configurar Apache, de modo que los archivos PHP se envíen comprimidos. Es decir, que el código HTML de la página, generado después del procesamiento de los scripts PHP, se comprima en línea antes de enviarse al cliente que lo solicitó.

Esto se coloca en un archivo htaccess en nuestro servidor, osea, un fichero de texto llamado ".htaccess", donde colocamos el código necesario para configurar Apache.

Nota: Por si no se sabe, los archivos htaccess tienen siempre el mombre ".htaccess". En Linux los archivos cuyo nombre comienza con punto "." quiere decir que son ocultos. Así pues el htaccess es un archivo que resulta oculto dentro de Linux, pero no en Windows. En los .htaccess colocamos cualquier configuración para el servidor Apache, no sólo las configuraciones para comprimir los archivos, también para hacer redirecciones, bloquear acceso a ficheros, etc etc.

Como los .htaccess sirven para configurar un directorio y todos los subdirectorios de aquel donde hemos colocado el archivo, el código siguiente lo pondremos en un archivo .htaccess que tendremos en la home del dominio (directorio raíz de publicación de nuestro sitio web), de modo que afecte al directorio principal del dominio y todos los subdirectorios que cuelguen de él.

php_flag zlib.output_compression On
php_value zlib.output_compression_level 2

La primera línea le indica que se tiene que activar la compresión GZIP para los archivos PHP. La segunda línea indica el nivel de compresión del archivo (cuanto mayor sea el nivel, de 1 al 10) mayor será la compresión, pero también requerirá más tiempo de procesamiento el comprimir los archivos antes de enviarlos. Con una compresión a nivel 2 ya se comprime bastante y requiere menos tiempo de proceso que una compresión a nivel superior.

En siguientes artículos aprenderemos a comprimir no sólo las Páginas PHP enviadas por Apache, sino también otros tipos de archivo susceptibles de ser comprimidos. Puedes continuar la lectura a partir del artículo donde explicamos cómo comprimir archivos JS, CSS y demás.

Miguel Angel Alvarez

Fundador de DesarrolloWeb.com y la plataforma de formación online EscuelaIT. Com...

Manual