mod_rewrite mit Cache Funktion?

Alles, was den Apache betrifft, kann hier besprochen werden.

mod_rewrite mit Cache Funktion?

Postby phpfuchs » 04. September 2006 17:59

Ich weiß nicht, ob es möglich ist, daß Apache die mit mod_rewrite und php/cgi erzeugten Seiten speichert (cachen).

Ich stelle es mir so vor:
Bei einer HTTP-Anfrage prüft Apache, ob die Datei im Dateisystem bereiten vorhanden ist.

Im Fall
1) die Datei ist vorhanden
wird diese gesendet und damit ist die Sache abgeschlossen.

Im Fall
2) die Datei gibt es nicht
wird die mod_rewrite-Regel angewandt und das PHP/CGI-Script ausgeführt, die erzeugte Datei wird gesendet und gleichzeitig gespeichert.

Dies hätte einige Vorteile:
- Wenn das PHP/CGI-Script immer denselben Inhalt zur jeweiligen URL erzeugt, könnte dies den Server sehr entlasten. Vor allem, wenn diese mit CMS-Systemen wie z.B. Contenido erzeugt werden.
- Thumbnails von Bildern könnten bei der ersten Anfrage automatisch erzeugt werden. So könnte man es sich ersparen, vor dem veröffentlichen neuer Bilder-Alben diese zu erzeugen und upzuloaden.

Gibt es so eine Cache-Funktion bereits? Wenn nicht, es wäre ein sinnvoller Vorschlag für eine Apache-Wunschzettel.

Viele Grüße

Egon Schmid
phpfuchs
 
Posts: 5
Joined: 27. June 2006 22:29

Postby KingCrunch » 04. September 2006 22:59

Sowas? Das würde zwar die mod_rewrite-Regeln grundsätzlich ausführen, wäre ja aber kein Beinbruch wenn dann anstelle der Scriptausführung das gecachte Dings auftauchen würde. Oder du realisierst es direkt in der von dir bevorzugten Scriptsprache: Beispiel PHP
Code: Select all
if (fileexists($filename)) {
  // Gebe Cache aus
} else {
  // Generiere Ausgabe
  // Cache ausgabe
  // Ausgabe
}

Hätte zudem den kleinen aber feinen Vorteil, dass bestimmte Bedinungen (Alter von DB-Einträgen, ...) explizit das Caching beeinflussen können.
Nicht jeder Fehler ist ein Bug ...
KingCrunch
 
Posts: 1724
Joined: 26. November 2005 19:25


Return to Apache

Who is online

Users browsing this forum: Peterzzz and 3 guests