Namestite Mod_Pagespeed, da pospešite delovanje Apache in Nginx do 10-krat


To je naša tekoča serija o optimizaciji in prilagajanju zmogljivosti Apache, tukaj predstavljamo nov Googlov izdelek, imenovan mod_pagespeed module za Apache ali Nginx, zaradi katerega se spletno mesto nalaga veliko hitreje kot kdaj koli prej.

Ta modul sem osebno preizkusil na našem strežniku Live (linux-console.net) in rezultati so neverjetni, zdaj se spletno mesto nalaga veliko hitreje kot prej. Vsem priporočam, da jo namestite in si ogledate rezultate.

V tem članku vam bomo pokazali, kako namestite in konfigurirate Googlov modul mod_pagespeed za spletne strežnike Apache in Nginx v sistemih RHEL/CentOS/Fedora in Debian/Ubuntu z uporabo uradnih binarnih paketov, tako da bo vaš sistem samodejno prejemal redne posodobitve in ostal posodobljen.

Kaj je Mod_PageSpeed

mod_pagespeed je odprtokodni modul za spletni strežnik Apache in Nginx, ki samodejno optimizira spletne strani za izboljšanje zmogljivosti med strežbo spletnih strani s strežnikom HTTP.

Ima več filtrov, ki samodejno optimizirajo datoteke, kot so HTML, CSS, JavaScript, JPEG, PNG in drugi viri.

mod_pagespeed je razvit v knjižnicah za optimizacijo strani PageSpeed, uveden je na več kot 100.000 spletnih mestih in ga zagotavljajo najbolj priljubljeni ponudniki CDN-jev in gostovanja, kot so GoDaddy, EdgeCast, DreamHost in le še nekaj.

Ponuja več kot 40+ filtrov za optimizacijo, ki vključuje:

  1. Optimizacija slike, stiskanje in spreminjanje velikosti
  2. Združevanje, pomanjševanje in vstavljanje CSS in JavaScript
  3. Razširitev predpomnilnika, ostrenje domene in prepisovanje
  4. Odloženo nalaganje datotek JS in slikovnih virov
  5. in mnogi drugi ...

Trenutno mod_pagespeed modul podpira Linux platforme RHEL/CentOS/Fedora in Debian/Ubuntu za 32-bitno in 64-bitno distribucijo.

Namestitev modula Mod_Pagespeed v Linux

Kot sem že omenil, da uporabljamo Googlove uradne binarne pakete za njegovo namestitev za prihodnje posodobitve, zato nadaljujmo in ga namestite v vaše sisteme, ki temeljijo na arhitekturi vašega OS.

----------- 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

Namestitev mod_pagespeed iz binarnih paketov bo v vaš sistem dodala Googlovo uradno repozitorij, tako da boste lahko mod_pagespeed samodejno posodobili z upraviteljem paketov, imenovanim yum ali apt.

Kaj Mode_Pagespeed je nameščen

Poglejmo, kateri paketi mod_pagespeed so nameščeni v sistemu:

  1. Namestila bo dva modula, mod_pagespeed.so za Apache 2.2 in mod_pagespeed_ap24.so za Apache 2.4.
  2. Namestila bo dve glavni konfiguracijski datoteki: pagespeed.conf in pagespeed_libraries.conf (za Debian pagespeed.load). Če spremenite eno od teh konfiguracijskih datotek, prihodnjih posodobitev ne boste več prejemali samodejno.
  3. Samostojni pomnilnik strani JavaScriptpeed_js_minify, ki se uporablja za pomanjšanje JS in ustvarjanje metapodatkov za kanonizacijo knjižnice.

O konfiguraciji Mod_Pagespeed in imenikih

Modul omogoča samodejno sledenje konfiguracijskim datotekam in imenikom med namestitvijo.

  1. /etc/cron.daily/mod-pagespeed: mod_pagespeed cron skript za preverjanje in namestitev najnovejših posodobitev.
  2. /etc/httpd/conf.d/pagespeed.conf: Glavna konfiguracijska datoteka za Apache v distribucijah, ki temeljijo na RPM.
  3. /etc/apache2/mods-enabled/pagespeed.conf: Glavna konfiguracijska datoteka za Apache2 v distribucijah, ki temeljijo na DEB.
  4. pagespeed_libraries.conf: privzeti nabor knjižnic za Apache se naloži ob zagonu Apache.
  5. /usr/lib{lib64}/httpd/modules/mod_pagespeed.so: mod_pagespeed modul za Apache.
  6. /var/cache/mod_pagespeed: Imenik za predpomnjenje datotek za spletna mesta.

Pomembno: V Nginxu so konfiguracijske datoteke mod_pagespeed običajno na voljo v imeniku/usr/local/nginx/conf /.

Konfiguriranje modula Mod_Pagespeed

V Apache se mod_pagespeed samodejno vklopi, ko je nameščen, v Nginxu pa morate v datoteko nginx.conf in v vsak strežniški blok, kjer je omogočena PageSpeed, postaviti naslednje vrstice:

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$" { }

Na koncu ne pozabite znova zagnati strežnika Apache ali Nginx, da začne mod_pagespeed pravilno delovati.

4. korak: Preverjanje modula Mod_Pagespeed

Za preverjanje modula mod_pagespeed bomo z ukazom curl preizkusili domeno ali IP, kot je prikazano:

# 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
...

Če ne vidite glave X-Mod-Pagespeed, to pomeni, da mod_pagespeed dejansko ni nameščen.

Če ne želite uporabiti mod_pagespeed v celoti, lahko izklopite tako, da v datoteko pagespeed.conf na vrhu vstavite naslednjo vrstico.

ModPagespeed off

Podobno, da vklopite modul, vstavite naslednjo vrstico v datoteko pagespeed.conf na vrhu.

ModPagespeed on

Kot sem rekel zgoraj, se po namestitvi mod_pagespeed naše spletno mesto naloži 40% -50% hitreje. Resnično bi radi vedeli o hitrosti vašega spletnega mesta, potem ko ga namestite v svoje sisteme s komentarji.

Za več podrobnosti o konfiguraciji si oglejte uradno stran mod_pagespeed na naslovu https://developers.google.com/speed/pagespeed/module/.