En este tutorial, le mostraremos cómo instalar y configurar Nginx con el módulo ngx_pagespeed en Ubuntu 16.04 LTS. Para aquellos de ustedes que no sabían, PageSpeed (ngx_pagespeed) es un Nginx módulo creado por Google para ayudar a hacer que la web sea más rápida al reescribir las páginas web para reducir la latencia y el ancho de banda. Para la instalación, necesitaremos compilar Nginx desde la fuente con el módulo PageSpeed, ya que Nginx no admite la carga dinámica de módulos (DSO) a menos que desee crear sus propios archivos rpm o deb.
Este artículo asume que tiene al menos conocimientos básicos de Linux, sabe cómo usar el shell y, lo que es más importante, aloja su sitio en su propio VPS. La instalación es bastante simple y asume que se están ejecutando en la cuenta raíz, si no, es posible que deba agregar 'sudo
' a los comandos para obtener privilegios de root. Le mostraré la instalación paso a paso de Nginx con el módulo pagespeed en un servidor Ubuntu 16.04 (Xenial Xerus).
Instalar Nginx con el módulo Ngx_Pagespeed en Ubuntu 16.04 LTS
Paso 1. Primero, asegúrese de que todos los paquetes de su sistema estén actualizados ejecutando el siguiente apt-get
comandos en la terminal.
sudo apt-get update sudo apt-get upgrade sudo apt-get install dpkg-dev build-essential zlib1g-dev libpcre3 libpcre3-dev unzip
Paso 2. Agregue el repositorio Nginx.
Ejecute los siguientes comandos en la terminal para compilar la última versión principal de Nginx:
wget http://nginx.org/keys/nginx_signing.key apt-key add nginx_signing.key
Cree un nuevo repositorio y edite el archivo sources.list:
nano /etc/apt/sources.list
Agregue las siguientes dos líneas al final de este archivo:
deb http://nginx.org/packages/mainline/ubuntu/ xenial nginx deb-src http://nginx.org/packages/mainline/ubuntu/ xenial nginx
Paso 3. Descarga Nginx del paquete fuente.
Cree un nuevo directorio para los archivos fuente de Nginx y descargue las fuentes de Nginx usando apt
comando:
mkdir ~/nginx && cd ~/nginx sudo apt source nginx
Revise los archivos descargados:
### ls ~/nginx/ nginx-1.11.1 nginx_1.11.1-1~xenial.dsc nginx_1.11.1-1~xenial.debian.tar.xz nginx_1.11.1.orig.tar.gz
Paso 4. Descarga el paquete fuente ngx_pagespeed.
Para compilar Nginx con el módulo ngx_pagespeed, también necesitamos el paquete fuente ngx_pagespeed. Vaya a la página de descarga de Github ngx_pagespeed:
wget https://codeload.github.com/pagespeed/ngx_pagespeed/zip/v1.11.33.4-beta
Descomprimir en el directorio actual:
unzip v1.11.33.4-beta cd ngx_pagespeed-1.11.33.4-beta/
A continuación, también necesitamos descargar la biblioteca psol (Biblioteca de optimización de PageSpeed) y extraerla:
wget https://dl.google.com/dl/page-speed/psol/1.11.33.4.tar.gz tar xvf 1.11.33.4.tar.gz
Paso 5. Configure Nginx para compilar con Pagespeed.
Primero, edite el archivo de reglas de compilación de Nginx:
nano ~/nginx/nginx-1.11.1/debian/rules
Agregue la nueva línea debajo de 'COMMON_CONFIGURE_ARGS':
--add-module=/home/username/ngx_pagespeed-1.11.33.2-beta
Paso 6. Inicie el paquete Compilation Nginx Ubuntu.
Vaya al directorio fuente de Nginx y compile Nginx desde la fuente con el dpkg-buildpackage
comando:
cd ~/nginx/nginx-1.11.1/ apt build-dep nginx dpkg-buildpackage -b
Cuando termine, habrá 7 archivos deb en ~/nginx
/ directorio. Solo necesitamos instalar el paquete nginx_1.11.1-1~xenial_amd64.deb o nginx_1.11.1-1~xenial_i386.deb, según la arquitectura de su sistema operativo. Los otros son el paquete de módulos dinámicos de Nginx y un paquete de depuración:
cd ~/nginx dpkg -i nginx_1.11.1-1~xenial_amd64.deb
Ahora comencemos con Nginx:
systemctl start nginx
Paso 7. Configure el módulo ngx_pagespeed en Nginx.
Ahora edite el archivo de configuración del bloque del servidor Nginx:
nano /etc/nginx/nginx.conf
Agregue las siguientes directivas de velocidad de página en la sección del servidor:
# enable pagespeed module on this server block 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$" { } pagespeed RewriteLevel CoreFilters;
Finalmente, reinicie el servicio Nginx:
systemctl reload nginx
Paso 8. Verifique si PageSpeed funciona.
Vaya a su sitio web. Actualice varias veces y luego verifique la fuente de su página. Presione la tecla Ctrl+F y busque la velocidad de la página. Verá que muchos de los recursos de su sitio web tienen ha sido procesado por pagespeed o puede emitir el siguiente comando:
curl -I -p http://y0ur-domain.com| grep X-Page-Speed
¡Felicitaciones! Ha instalado correctamente nginx pagespeed. Gracias por usar este tutorial para instalar Nginx con el módulo ngx_pagespeed en el sistema Ubuntu 16.04 LTS (Xenial Xerus). Para obtener ayuda adicional o información útil, le recomendamos consulte el sitio web oficial de Nginx.