Instale Mod_Pagespeed para acelerar el rendimiento de Apache y Nginx hasta 10 veces más


Esta es nuestra serie en curso sobre optimización de Apache y ajuste de rendimiento. Aquí presentamos un nuevo producto de Google llamado módulo mod_pagespeed para Apache o Nginx que hace que el sitio web se cargue mucho más rápido que nunca.

Personalmente he probado este módulo en nuestro servidor Live (tecmint.com) y los resultados son asombrosos, ahora el sitio se carga mucho más rápido que antes. Les recomiendo a todos que lo instalen y vean los resultados.

En este artículo, le mostraremos cómo instalar y configurar el módulo mod_pagespeed de Google para servidores web Apache y Nginx en sistemas RHEL/CentOS/Fedora y Debian/Ubuntu utilizando paquetes binarios oficiales, de modo que su sistema reciba actualizaciones periódicas automáticamente y permanezca A hoy.

Qué es Mod_PageSpeed

mod_pagespeed es un módulo de código abierto para el servidor web Apache y Nginx que optimiza automáticamente las páginas web para mejorar el rendimiento mientras sirve páginas web mediante el servidor HTTP.

Tiene varios filtros que optimizan automáticamente archivos como HTML, CSS, JavaScript, JPEG, PNG y otros recursos.

mod_pagespeed se desarrolla en las bibliotecas de optimización de PageSpeed, implementado en más de 100K sitios web y proporcionado por los proveedores de alojamiento y CDN más populares como GoDaddy, EdgeCast, DreamHost y algunos por nombrar.

Ofrece más de 40 filtros de optimización, que incluyen:

  1. Image optimization, compression, and resizing
  2. CSS & JavaScript concatenation, minification, and inlining
  3. Cache extension, domain sharding and rewriting
  4. Deferred loading of JS and image resources
  5. and many others…

Actualmente, las plataformas Linux compatibles con el módulo mod_pagespeed son RHEL/CentOS/Fedora y Debian/Ubuntu para distribuciones de 32 y 64 bits.

Instalación del módulo Mod_Pagespeed en Linux

Como mencioné anteriormente, estamos usando los paquetes binarios oficiales de Google para instalarlo para futuras actualizaciones, así que sigamos adelante e instálelo en sus sistemas según la arquitectura de su sistema operativo.

----------- On 32-bit Systems -----------------
# wget https://dl-ssl.google.com/dl/linux/direct/mod-pagespeed-stable_current_i386.rpm
# yum install at   [# if you don't already have 'at' installed]
# rpm -Uvh mod-pagespeed-stable_current_i386.rpm

----------- On 64-bit Systems -----------------
# wget https://dl-ssl.google.com/dl/linux/direct/mod-pagespeed-stable_current_x86_64.rpm
# yum install at   [# if you don't already have 'at' installed]
# rpm -Uvh mod-pagespeed-stable_current_x86_64.rpm
----------- On 32-bit Systems -----------------
$ wget https://dl-ssl.google.com/dl/linux/direct/mod-pagespeed-stable_current_i386.deb
$ sudo dpkg -i mod-pagespeed-stable_current_i386.deb
$ sudo apt-get -f install

----------- On 64-bit Systems -----------------
$ wget https://dl-ssl.google.com/dl/linux/direct/mod-pagespeed-stable_current_amd64.deb
$ sudo dpkg -i mod-pagespeed-stable_current_amd64.deb
$ sudo apt-get -f install

La instalación de mod_pagespeed desde paquetes binarios agregará un repositorio oficial de Google a su sistema, de modo que pueda actualizar mod_pagespeed automáticamente usando el administrador de paquetes llamado yum o apt.

Qué Mode_Pagespeed está instalado

Veamos qué paquetes mod_pagespeed están instalados en el sistema:

  1. It will install two modules, mod_pagespeed.so for Apache 2.2 and mod_pagespeed_ap24.so for Apache 2.4.
  2. It will install two main configuration files: pagespeed.conf and pagespeed_libraries.conf (for Debian pagespeed.load). If you change one of these configuration files, you will no longer receive future updates automatically.
  3. A standalone JavaScript minifier pagespeed_js_minify used to minify JS and create metadata for library canonicalization.

Acerca de la configuración y los directorios de Mod_Pagespeed

El módulo permite los siguientes archivos de configuración y directorios automáticamente durante la instalación.

  1. /etc/cron.daily/mod-pagespeed : mod_pagespeed cron script for checking and installing latest updates.
  2. /etc/httpd/conf.d/pagespeed.conf : The main configuration file for Apache in RPM based distributions.
  3. /etc/apache2/mods-enabled/pagespeed.conf : The main configuration file for Apache2 in DEB based distributions.
  4. pagespeed_libraries.conf : The default set of libraries for Apache, loads at Apache startup.
  5. /usr/lib{lib64}/httpd/modules/mod_pagespeed.so : mod_pagespeed module for Apache.
  6. /var/cache/mod_pagespeed : File caching directory for web sites.

Importante: En Nginx, los archivos de configuración de mod_pagespeed normalmente se encuentran en el directorio/usr/local/nginx/conf /.

Configuración del módulo Mod_Pagespeed

En Apache, mod_pagespeed se enciende automáticamente cuando se instala, mientras que en Nginx debe colocar las siguientes líneas en su archivo nginx.conf y en cada bloque de servidor donde PageSpeed u200bu200bestá habilitado:

pagespeed on;

# Needs to exist and be writable by nginx.  Use tmpfs for best performance.
pagespeed FileCachePath /var/ngx_pagespeed_cache;

# Ensure requests for pagespeed optimized resources go to the pagespeed handler
# and no extraneous headers get set.
location ~ "\.pagespeed\.([a-z]\.)?[a-z]{2}\.[^.]{10}\.[^.]+" {
  add_header "" "";
}
location ~ "^/pagespeed_static/" { }
location ~ "^/ngx_pagespeed_beacon$" { }

Finalmente, no olvide reiniciar su servidor Apache o Nginx para que mod_pagespeed funcione correctamente.

Paso 4: Verificación del módulo Mod_Pagespeed

Para verificar el módulo mod_pagespeed, usaremos el comando curl para probar en el dominio o IP como se muestra:

# curl -D- http://192.168.0.15/ | less
HTTP/1.1 200 OK
Date: Fri, 04 Mar 2016 07:37:57 GMT
Server: Apache/2.4.6 (CentOS) PHP/5.4.16
...
X-Mod-Pagespeed: 1.9.32.13-0
---
HTTP/1.1 200 OK
Date: Fri, 04 Mar 2016 07:37:57 GMT
Server: nginx/1.4.0
...
X-Page-Speed: 1.5.27.1-2845
...

Si no ve un encabezado X-Mod-Pagespeed, eso significa que mod_pagespeed no está realmente instalado.

Si no desea utilizar mod_pagespeed por completo, puede desactivarlo insertando la siguiente línea en el archivo pagespeed.conf en la parte superior.

ModPagespeed off

De manera similar, para activar el módulo, inserte la siguiente línea en el archivo pagespeed.conf en la parte superior.

ModPagespeed on

Como dije anteriormente, después de instalar mod_pagespeed, nuestro sitio web se carga entre un 40% y un 50% más rápido. Realmente nos gustaría conocer la velocidad de su sitio web después de instalarlo en sus sistemas a través de comentarios.

Para obtener más detalles sobre la configuración, puede consultar la página oficial de mod_pagespeed en https://developers.google.com/speed/pagespeed/module/.