-
15
Mär 2017
- Zugriffe: 3289
NGINX und ngx_pagespeed
Kürzlich hat Google, als Beitrag für ein schnelleres Internet, das Tool PageSpeed vorgestellt. Mit dieser Erweiterung sollte es für Entwickler und Webmaster möglich sein einen Überblick über die Geschwindigkeit ihrer Website zu bekommen und dabei genau aufzeigen welche Punkte verbessert werden können.
Clientseitige Installation
Installieren Sie den Browser Google Chrome sowie die nachfolgend aufgelisteten Add-On’s.
Browser
Serverseitige Installation
Als erstes das Verzeichnis erstellen:
cd /usr/src mkdir pagespeed && cd pagespeed
Dann die Source Liste anpasssen:
vi /etc/apt/sources.list
Und die SRC Quellen einfügen falls diese nicht existieren:
deb http://ftp.de.debian.org/debian jessie main contrib non-free deb-src http://ftp.de.debian.org/debian jessie main contrib non-free
Danach ein Update ausführen:
apt-get update apt-get upgrade
Benötigte Software installieren:
apt-get install dpkg-dev build-essential zlib1g-dev libpcre3 libpcre3-dev unzip curl libcurl4-openssl-dev libossp-uuid-dev
NGINX Quellen herunterladen:
apt-get source nginx apt-get build-dep nginx
Verzeichnis wechseln:
cd /usr/src/pagespeed/nginx-1.6.2/debian/modules/
NGINX Pagespeed Quellen runtersaugen:
wget https://github.com/pagespeed/ngx_pagespeed/archive/release-1.9.32.3-beta.zip unzip release-1.9.32.3-beta.zip mv ngx_pagespeed-release-1.9.32.3-beta/ ngx_pagespeed cd ngx_pagespeed/ wget https://dl.google.com/dl/page-speed/psol/1.9.32.3.tar.gz tar -xzvf 1.9.32.3.tar.gz
Die Datei rules in „/usr/src/pagespeed/nginx-1.6.2/debian/“ anpassen und das Modul einfügen:
–add-module=$(MODULESDIR)/ngx_pagespeed \
Download der geänderten "rules" Datei im Zip Format: rules.zip
Nun kompillieren wir die Pakete:
cd /usr/src/pagespeed/nginx-1.6.2/ && dpkg-buildpackage -b
Mal sehen ob alles da ist:
cd /usr/src/pagespeed ls -l
Nun können wir die neu erstellten Pakete installieren:
dpkg --install nginx_1.6.2-5+*_all.deb nginx-common_1.6.2-5+*_all.deb nginx-full_1.6.2-5+*_amd64.deb
NGINX Neustarten:
/etc/init.d/nginx restart
NGINX Version anzeigen, nun sollte das Module pagespeed ersichtlich sein:
nginx -V
Pagespeed Cache Ordner erstellen und die Rechte dafür anpassen:
mkdir /var/ngx_pagespeed_cache chown -R www-data:www-data /var/ngx_pagespeed_cache
Falls GZIP Kompression erwünscht wird: /etc/nginx/nginx.conf editieren:
gzip on; gzip_disable "msie6"; gzip_comp_level 6; gzip_min_length 1100; gzip_buffers 16 8k; gzip_proxied any; gzip_types text/plain text/css text/js text/xml text/javascript application/javascript application/x-javascript application/json application/xml application/rss+xml image/svg+xml;
NGINX Neustarten:
/etc/init.d/nginx restart
Nun nur noch die Konfigurationsdatei der VHost(s) anpassen:
# let's speed up PageSpeed by storing it in the super duper fast memcached pagespeed MemcachedThreads 1; pagespeed MemcachedServers "localhost:11211"; # Filter settings pagespeed RewriteLevel CoreFilters; pagespeed EnableFilters collapse_whitespace,remove_comments; # 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$" { } location /ngx_pagespeed_statistics { allow 127.0.0.1; deny all; } location /ngx_pagespeed_global_statistics { allow 127.0.0.1; deny all; } location /ngx_pagespeed_message { allow 127.0.0.1; deny all; } location /pagespeed_console { allow 127.0.0.1; deny all; }
NGINX erneut durchstarten:
/etc/init.d/nginx restart
Das wars, nun sollte Pagespeed funktionieren, ein Test:
curl -I -p http://localhost|grep X-Page-Speed
Sollte die Pagespeed Version als Antwort liefern: X-Page-Speed 1.9.32.3-4448
Aktuell sind 4 Gäste und keine Mitglieder online