Introducció
Requisits previs
Pas 1: actualitzeu el sistema
Pas 2: baixa les dependències
Pas 3: descarregueu les biblioteques d'optimització de PageSpeed
Pas 4: configureu i compileu Nginx
Pas 5: creeu un script d'inici
Pas 6: habiliteu ngx_pagespeed
Pas 6: prova
Introducció
Ngx-pagespeed és un mòdul Nginx de codi obert que accelera el vostre lloc i redueix el temps de càrrega de la pàgina. Ho fa reescrivint pàgines web per reduir la latència i l'ample de banda. Ngx-pagespeed també ofereix molts filtres d'optimització que s'utilitzen per optimitzar diversos fitxers com ara css, html, png i jpg.
Requisits previs
- Una instància Vultr recentment desplegada que executa CentOS 7.
- Un usuari de sudo .
Pas 1: actualitzeu el sistema
Abans d'instal·lar qualsevol paquet a la vostra instància del servidor CentOS, es recomana actualitzar el sistema. Inicieu sessió amb l'usuari sudo i executeu les ordres següents per actualitzar el sistema.
sudo yum -y update
sudo reboot
Un cop el sistema s'hagi reiniciat, torneu a iniciar sessió com a usuari sudo i continueu amb els passos següents.
Pas 2: baixa les dependències
Per instal·lar Nginx amb ngx-pagespeed hem de compilar Nginx des de la font. Per fer-ho, hem de descarregar algun programari executant l'ordre següent.
sudo yum -y install gcc-c++ pcre-devel zlib-devel make unzip
A continuació, hem de descarregar el codi font per a Nginx i ngx-pagespeed. En el moment d'escriure, l'última versió estable de és Nginx 1.12.0 i la darrera versió ngx-pagespeed és 1.12.34.2.
NPS_VERSION=1.12.34.2
NGINX_VERSION=1.12.0
wget http://nginx.org/download/nginx-${NGINX_VERSION}.tar.gz
wget https://github.com/pagespeed/ngx_pagespeed/archive/v${NPS_VERSION}-beta.zip
Extraieu els paquets descarregats.
tar -xvzf nginx-${NGINX_VERSION}.tar.gz
unzip v${NPS_VERSION}-beta.zip
Pas 3: descarregueu les biblioteques d'optimització de PageSpeed
Les biblioteques d'optimització de PageSpeed (psol) són necessàries per compilar Nginx. Baixeu-los i extreu-los al directori font ngx-pagespeed amb les ordres següents.
cd ngx_pagespeed-${NPS_VERSION}-beta
psol_url=https://dl.google.com/dl/page-speed/psol/${NPS_VERSION}.tar.gz
[ -e scripts/format_binary_url.sh ] && psol_url=$(scripts/format_binary_url.sh PSOL_BINARY_URL)
wget ${psol_url}
tar -xzvf $(basename ${psol_url})
cd ..
La font Nginx ara es pot compilar amb el mòdul pagespeed. Aneu al directori font de Nginx.
cd nginx-${NGINX_VERSION}
Configureu la font amb l'ordre següent.
./configure --add-module=$HOME/ngx_pagespeed-${NPS_VERSION}-beta --user=nobody --group=nobody --pid-path=/var/run/nginx.pid ${PS_NGX_EXTRA_FLAGS}
Un cop completada la configuració, compileu Nginx amb l'ordre:
sudo make
Això pot trigar uns quants minuts. Després d'això, podeu continuar i instal·lar el programari amb l'ordre:
sudo make install
Nginx ara s'ha instal·lat al directori /usr/local/nginx. Per comoditat, podem crear els següents enllaços simbòlics:
sudo ln -s /usr/local/nginx/conf/ /etc/nginx
sudo ln -s /usr/local/nginx/sbin/nginx /usr/sbin/nginx
Pas 5: creeu un script d'inici
Per poder aturar i iniciar Nginx, heu de crear manualment un script d'inici. Nginx proporciona una plantilla per a això aquí . Copieu el contingut de la plantilla i inseriu-lo al /etc/init.d/nginxfitxer mitjançant un editor de text com ara nano. També configureu els permisos adequats per al fitxer.
sudo nano /etc/init.d/nginx
sudo chmod +x /etc/init.d/nginx
Ara podeu iniciar-lo i afegir-lo als nivells d'execució predeterminats (de manera que Nginx s'inicia i s'atura juntament amb la vostra instància) amb l'ordre:
sudo service nginx start
sudo systemctl enable nginx
Pas 6: habiliteu ngx_pagespeed
Per habilitar ngx-pagespeed, comenceu creant un directori de memòria cau i assignant-ne la propietat a Nginx:
sudo mkdir -p /var/ngx_pagespeed_cache
sudo chown -R nobody:nobody /var/ngx_pagespeed_cache
Obriu el /etc/nginx/nginx.conffitxer:
sudo nano /etc/nginx/nginx.conf
I afegiu les línies següents dins del bloc del servidor:
##
# Pagespeed main settings
pagespeed on;
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 ~ "^/ngx_pagespeed_static/" { }
location ~ "^/ngx_pagespeed_beacon" { }
Finalment, reinicieu Nginx perquè els canvis tinguin efecte:
sudo systemctl restart nginx
Pas 6: prova
Per comprovar si ngx-pagespeed s'ha instal·lat correctament al vostre servidor, executeu l'ordre següent:
curl -I -p http://localhost| grep X-Page-Speed
La sortida hauria de ser així:
X-Page-Speed: 1.12.34.2-0
Ngx-pagespeed ara està instal·lat al vostre servidor. Si no obteniu aquesta sortida, assegureu-vos que heu habilitat ngx-pagespeed tal com s'ha explicat abans.