Caching · 2 min read · Jan 01, 2026
Caching Mit Apaches mod_cache Auf Debian Etch
Caching Mit Apaches mod_cache Auf Debian Etch
Version 1.0
Autor: Falko Timme
Dieser Artikel erklärt, wie Sie die Inhalte Ihrer Website mit Apaches mod_cache auf Debian Etch cachen können. Wenn Sie eine stark frequentierte dynamische Website haben, die bei jeder Anfrage viele Datenbankabfragen generiert, können Sie die Serverlast erheblich reduzieren, indem Sie Ihre Inhalte für einige Minuten oder länger cachen (das hängt davon ab, wie oft Sie Ihre Inhalte aktualisieren).
Ich gebe keine Garantie, dass dies für Sie funktioniert!
1 Vorbemerkung
Ich gehe davon aus, dass Sie eine funktionierende Apache2-Installation (Apache 2.2.x - vor dieser Version gilt mod_cache als experimentell) aus den Debian-Repositories haben - die Apache-Version in den Debian Etch-Repositories ist 2.2.3, also sollten Sie bereit sein.
Ich verwende hier das Dokumentenstammverzeichnis /var/www für meinen Test-vhost - Sie müssen dies anpassen, wenn Ihr Dokumentenstammverzeichnis anders ist.
2 Aktivieren von mod_cache
mod_cache hat zwei Untermodule, die den Cache-Speicher verwalten, mod_disk_cache (zum Speichern von Inhalten auf der Festplatte) und mod_mem_cache (zum Speichern von Inhalten im Speicher, was schneller ist als das Caching auf der Festplatte). Entscheiden Sie, welches Sie verwenden möchten, und fahren Sie entweder mit Kapitel 2.1 (mod_disk_cache) oder 2.2 (mod_mem_cache) fort.
2.1 mod_disk_cache
Die Konfiguration von mod_disk_cache wird in /etc/apache2/mods-available/disk_cache.conf gespeichert, also lassen Sie uns diese bearbeiten:
vi /etc/apache2/mods-available/disk_cache.confStellen Sie sicher, dass Sie die Zeile CacheEnable disk / auskommentieren, sodass die minimale Konfiguration wie folgt aussieht:
| # a2enmod-note: needs-configuration |
Sie finden Erklärungen zu diesen Konfigurationsoptionen und weiteren Konfigurationsoptionen auf http://httpd.apache.org/docs/2.2/mod/mod_disk_cache.html.
Jetzt können wir mod_cache und mod_disk_cache aktivieren:
a2enmod cache
a2enmod disk_cache
/etc/init.d/apache2 force-reloadUm sicherzustellen, dass unser Cache-Verzeichnis /var/cache/apache2/mod_disk_cache im Laufe der Zeit nicht voll wird, müssen wir es mit dem Befehl htcacheclean reinigen. Dieser Befehl ist Teil des Pakets apache2-utils, das wir wie folgt installieren:
apt-get install apache2-utils Anschließend können wir htcacheclean als Daemon wie folgt starten:
htcacheclean -d30 -n -t -p /var/cache/apache2/mod_disk_cache -l 100M -iDies wird unser Cache-Verzeichnis alle 30 Minuten reinigen und sicherstellen, dass es nicht größer als 100 MB wird. Um mehr über htcacheclean zu erfahren, werfen Sie einen Blick auf
man htcachecleanNatürlich möchten Sie htcacheclean nicht jedes Mal manuell starten, wenn Sie den Server neu starten - daher bearbeiten wir /etc/rc.local…
vi /etc/rc.local… und fügen die folgende Zeile direkt vor der Zeile exit 0 hinzu:
| [...] /usr/sbin/htcacheclean -d30 -n -t -p /var/cache/apache2/mod_disk_cache -l 100M -i [...] |
Dies wird htcacheclean automatisch jedes Mal starten, wenn Sie den Server starten.
Erhalte neue Beiträge in deinem Posteingang.
Kein Spam. Jederzeit abmelden.