Apache mod_expires Konfiguration für ein schnelles Joomla auf dem QNAP Webserver

Einleitung mod_expires

Um den Browsercache beim Clienten für einen schnelleren Seitenaufbau benutzen zu können, benötigt man das Apache-Webserver-Modul mod_expires. Es werden möglichst viele unveränderte Dateien beim Nutzer aus dem Browsercache geladen. Dadurch verringert sich der Traffic und die Ladezeit deutlich.

Die Datei apache.conf

Um dieses Modul in die Apache-Konfiguration laden zu können, muss man den richtigen Speicherort der Apache.conf finden. Ich habe ihn durch ausprobieren suchen müssen. Beim 259er ist er in:

/mnt/HDA_ROOT/.config/apache/apache.conf

Mit dem VI-Editor kann man das Modul durch folgenden Text einfügen:

LoadModule expires_module /mnt/ext/opt/apache/modules/mod_expires.so

Nach einem Neustart des Apache kann man das Vorhandensein in Joomla-Systeminformation-php-Information bzw. z.B. mit Google-Pagespeed prüfen.

/etc/init.d/./Qthttpd.sh restart

Anpassung der Datei .htaccess

In der .htaccess kann dann mit dem folgenden Script die Cache-Dauer gesteuert werden. Die .htaccess muss in alle betreffenden Verzeichnise abgelegt werde. Mit dem Google-Tool habe ich eine optimale Einstellung der betreffenden Dateien finden können. Damit rutschte der Speed-Index meiner Seite deutlich nach oben.

<IfModule mod_expires.c>
ExpiresActive on
ExpiresByType image/jpg "access plus 8 day"
ExpiresByType image/gif "access plus 8 day"
ExpiresByType image/jpeg "access plus 8 day"
ExpiresByType text/css "access plus 8 day"
ExpiresByType image/png "access plus 8 day"
ExpiresByType application/x-javascript "access plus 8 day"
#ExpiresDefault "access plus 8 day"
</IfModule> 

Unterstützung durch JCH-Optimize

JCH Optimize hilft mit etlichen Optionen die Geschwindigkeit deutlich zu erhöhen. Allerdings funktioniert Dies nur mit Probieren. Außerdem muss man beim Austesten ständig den Joomla-Cache löschen und den Browser-Verlauf leeren, damit sich die Auswirkungen im Chrome-Browser mit PageSpeed messen lassen. Ich habe folgende Einstellung setzen können:

Combine CSS Files Ja
Replace @import Ja
Combine JavaScript Files Ja
GZip JavaScript and CSS Ja
Minify CSS Ja
Minify javascript Ja
Minify HTML Nein
Defer javascript Ja