Caching von Websiten Schnellere Ladezeiten durch das Caching von Webseiten über den Apache Webserver dank der Datei .htaccess!

Auch in diesem Bereich bietet der Apache Webserver seine Vorteile. Mit ihm kann man die Dauer des Zwischenspeicherns eines Dokumentes genau festlegen, was zu einem guten Zusammenspiel zwischen dem Besucher und den gespeicherten Daten führt.
Bei dem Besuch eines Users auf einer Seite, sei es jetzt irgendein Artikel, wird dieser auf dem Computer des Besuchers zwischengespeichert. Ähnlich wie bei einem Cookie ist auch hier ein Verfallsdatum festgelegt. Sollte der Besucher innerhalb dieses Zeitraums genau diese Seite nochmals besuchen, so wird diese aus dem Cache geladen, was die Ladezeit dann deutlich verkürzt.
Ist dieser Zeitraum abgelaufen, müssen die Daten erneut angefordert werden.
Das besondere was der Apache Server hier noch bietet ist, das man einzelne MIME-Typen definieren kann.
Man kann also definieren, das alle Dateien von dem Typ image/gif erst nach
30-Tagen wieder angefordert müssen.
Dies ist natürlich ein deutlicher Vorteil.

Es ist eine .htaccess Datei nötig, die diese Festlegungen dem Server mitteilt.
Wichtig vorweg ist, das auf dem Server das Modul "mod_expires" installiert bzw. einkompiliert ist. Dies ist aber bei den meisten Servern der Fall.

Es gibt hauptsächlich drei Befehlsformen, die verwendet werden können.
Diese sind in einer .htaccess - Datei auf dem Server zu hinterlegen.

Erste Form:

ExpiresActive On
ExpiresDefault "access plus 5 days"


Die erste Zeile aktiviert die Cache-Kontrolle des Servers. Die folgende Zeile gibt einen Default-Wert an. Die Seite soll genau fünf Tage lang nach dem Besuch im Cache bleiben. Dies gilt jetzt allgemein für alle Dokumente auf dem Server, oder in dem Verzeichnis.
Dies ist natürlich zu allgemein, da eine html-Seite wahrscheinlich öfters verändert wird als eine Grafikdatei.
Hier greift die Zweite Form:

ExpiresByType image/gif A864000


Wie sich vermuten lässt wird hier, wie oben schon angesprochen der einzelne Dateityp angesprochen.
images/gif steht hier für alle *.gif Dateien. Hinter dem MIME-Typ steht die Zeitangabe, nach wievielen Sekunden die Datei neu vom Server geladen werden soll. Das A ist fest. Es steht für "Anforderung" (engl. access). In diesem Fall werden die gif-Dateien nach 10 Tagen wieder neu vom Server geladen.

Weitere MIME-Typen

image/jpeg *.jpg Grafiken
image/png *.png Grafiken
text/css *.css Dateien
text/html *.html Dateien
text/plain *.txt Dateien (bzw. Fließtext)

Ein Problem welches hier immer noch vorhanden ist, ist, dass die Startseite mit gecacht wird, und somit ihre Aktualität verliert. Hier muss eine Ausnahme für die Startseite gefunden werden.
Dies erreichen wir mit folgenden 4 Codezeilen:

<Files index.htm>
Header append Cache-Control "public, must-revalidate"
</Files>


Mit dieser Anweisung wird die Seite als Öffentlich festgelegt, und durch den Zusatz must-revalidate wird regelrecht erzwungen, dass die Seite neu geladen werden muss.
Dies gilt Grundsätzlich für alle Dateien mit dem Dateinamen index.htm

Bookmark setzen... These icons link to social bookmarking sites where readers can share and discover new web pages.
  • Print
  • Digg
  • Sphinn
  • del.icio.us
  • Facebook
  • Mixx
  • Bloglines
  • MisterWong
  • MySpace
  • Reddit
  • SEOigg
  • Technorati
  • TwitThis
  • Y!GG
  • Google Bookmarks

Weiterführende Links: