timscha.io

Wordpress, nginx & wp-rocket

Zur Zeit beschäftige ich mich vermehrt mit Worpdress und Caching.

Bisher setzte ich als Caching-Plugin auf Cachify, ehemals entwickelt von Sergej Müller mit memcached als Backend, welches direkt vom nginx angesprochen wird – so wirklich glücklich, was die Geschwindigkeit angeht, war ich damit aber nicht.

Nach einiger Recherche bin ich nun auf WP-Rocket aufmerksam geworden, einem kostenplichtigen Caching-Plugin. Mein bisheriger Eindruck ist bisher sehr postiv, rein subjektiv gefühlt hat sich die Geschwindigkeit im Gegensatz zu Cachify deutlich verbessert – aber es gibt ja immer noch etwa mehr Optimierungsmöglichkeiten.

Nach weiterer Recherche bin ich dann auf Github auf das Projekt Rocket-Nginx gestoßen. Die Installation ist denkbar einfach. Getestet habe ich dies unter Debian 9 und CentOS 7. Angenommen wird, dass nginx unter /etc/nginx/ seine Konfiguration abgelegt hat:

cd /etc/nginxgit clone https://github.com/maximejobin/rocket-nginx.gitcd rocket-nginxcp rocket-nginx.ini.disabled rocket-nginx.iniphp rocket-parser.php

Der Aufruft der PHP-Datei generiert eine default.conf, welche in alle eure vHosts eingefügt werden muss, die für eine WordPress-Installatio mit WP-Rocket genutzt werden. Dies geschieht mit einem einfachen include:

include rocket-nginx/default.conf;

Dieses erweitert eine vorhandene nginx-Konfiguration für eine WordPress-Installation um nützliche Erweiterungen wie z.B. HSTS und GZIP.

Was die Sache nun besonders hilfreich macht: Im Normalfall werden die von WP-Rocket generierten HTML-Seiten wie folgt ausgegeben:

NGINX → PHP-FPM → PHP → Static file

Durch Nutzung der weiteren Regeln für nginx verkürzt sich dieser Weg wie folgt:

NGINX → Static file

Nginx liefert also direkt die statischen Seiten aus ohne erst den Umweg über PHP gehen zu müssen.

Enjoying these posts? Subscribe for more
Subscribe now

Subscribe to be notified of new content and support timscha.io! You'll be a part of the community helping keep this site independent and ad-free.

You've successfully subscribed to timscha.io
Great! Next, complete checkout for full access to timscha.io
Welcome back! You've successfully signed in
Success! Your account is fully activated, you now have access to all content.