Uvod
Preduvjeti
Korak 1: Ažurirajte sustav
Korak 2: Preuzmite ovisnosti
Korak 3: preuzmite knjižnice za optimizaciju stranice
Korak 4: Konfigurirajte i kompajlirajte Nginx
Korak 5: Napravite skriptu za pokretanje
Korak 6: Omogućite ngx_pagespeed
Korak 6: Testirajte
Uvod
Ngx-pagespeed je Nginx modul otvorenog koda koji ubrzava vašu stranicu i smanjuje vrijeme učitavanja stranice. To čini prepisivanjem web stranica kako bi se smanjila latencija i propusnost. Ngx-pagespeed također nudi mnoge filtere za optimizaciju koji se koriste za optimizaciju različitih datoteka kao što su css, html, png i jpg.
Preduvjeti
- Novopostavljena instanca Vultra koja pokreće CentOS 7.
- Korisnik sudoa .
Korak 1: Ažurirajte sustav
Prije instaliranja bilo kojeg paketa na instancu poslužitelja CentOS, preporučuje se ažuriranje sustava. Prijavite se pomoću sudo korisnika i pokrenite sljedeće naredbe za ažuriranje sustava.
sudo yum -y update
sudo reboot
Nakon što se sustav ponovno pokrene, ponovno se prijavite kao sudo korisnik i nastavite sa sljedećim koracima.
Korak 2: Preuzmite ovisnosti
Da bismo instalirali Nginx s ngx-pagespeedom, moramo kompajlirati Nginx iz izvora. Da bismo to učinili, moramo preuzeti neki softver pokretanjem sljedeće naredbe.
sudo yum -y install gcc-c++ pcre-devel zlib-devel make unzip
Zatim moramo preuzeti izvorni kod za Nginx i ngx-pagespeed. U trenutku pisanja, najnovija stabilna verzija je Nginx 1.12.0, a najnovija verzija ngx-pagespeed je 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
Ekstrahirajte preuzete pakete.
tar -xvzf nginx-${NGINX_VERSION}.tar.gz
unzip v${NPS_VERSION}-beta.zip
Korak 3: preuzmite knjižnice za optimizaciju stranice
Knjižnice za optimizaciju stranice PageSpeed (psol) potrebne su za prevođenje Nginxa. Preuzmite ih i raspakirajte u izvorni direktorij ngx-pagespeed pomoću sljedećih naredbi.
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 ..
Izvorni Nginx sada se može kompajlirati s modulom pagespeed. Idite na izvorni direktorij Nginxa.
cd nginx-${NGINX_VERSION}
Konfigurirajte izvor sljedećom naredbom.
./configure --add-module=$HOME/ngx_pagespeed-${NPS_VERSION}-beta --user=nobody --group=nobody --pid-path=/var/run/nginx.pid ${PS_NGX_EXTRA_FLAGS}
Nakon što je konfiguracija dovršena, kompajlirajte Nginx naredbom:
sudo make
To može potrajati nekoliko minuta. Nakon toga možete nastaviti i instalirati softver pomoću naredbe:
sudo make install
Nginx je sada instaliran u direktorij /usr/local/nginx. Radi praktičnosti, možemo stvoriti sljedeće simbolične veze:
sudo ln -s /usr/local/nginx/conf/ /etc/nginx
sudo ln -s /usr/local/nginx/sbin/nginx /usr/sbin/nginx
Korak 5: Napravite skriptu za pokretanje
Da biste mogli zaustaviti i pokrenuti Nginx, morate ručno kreirati skriptu za pokretanje. Predložak za to nudi Nginx ovdje . Kopirajte sadržaj predloška i umetnite ga u /etc/init.d/nginxdatoteku pomoću uređivača teksta kao što je nano. Također postavite prava dopuštenja za datoteku.
sudo nano /etc/init.d/nginx
sudo chmod +x /etc/init.d/nginx
Sada možete pokrenuti i zatim ga dodati na zadane razine pokretanja (tako da se Nginx pokreće i zaustavlja zajedno s vašom instancom) naredbom:
sudo service nginx start
sudo systemctl enable nginx
Korak 6: Omogućite ngx_pagespeed
Da biste omogućili ngx-pagespeed, počnite stvaranjem direktorija predmemorije i dodjeljivanjem vlasništva za njega Nginxu:
sudo mkdir -p /var/ngx_pagespeed_cache
sudo chown -R nobody:nobody /var/ngx_pagespeed_cache
Otvorite /etc/nginx/nginx.confdatoteku:
sudo nano /etc/nginx/nginx.conf
I dodajte sljedeće retke unutar bloka poslužitelja:
##
# 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" { }
Konačno, ponovno pokrenite Nginx kako bi promjene stupile na snagu:
sudo systemctl restart nginx
Korak 6: Testirajte
Da biste provjerili je li ngx-pagespeed ispravno instaliran na vašem poslužitelju, pokrenite sljedeću naredbu:
curl -I -p http://localhost| grep X-Page-Speed
Izlaz bi trebao izgledati ovako:
X-Page-Speed: 1.12.34.2-0
Ngx-pagespeed je sada instaliran na vašem poslužitelju. Ako ne dobijete ovaj izlaz, provjerite jeste li omogućili ngx-pagespeed kao što je prije objašnjeno.