mod disk cache unter apache 2.0.50 läuft nicht
Ich habe einen Apache 2.0.50 unter Suse 9.2 am laufen, will nicht auf 2.2.x updaten, weil der Rest funktioniert gut.
Mittels ProxyPass greife ich nun auf eine externe Site zu, das funktioniert auch reibungslos. Da ich den Zugriff beschleunigen und den Datentransfer reduzieren möchte, benutze ich die Cache-Module von Apache.
Ich habe schon gesehen dass die Cache-Module bei der 2.0.x-Version sehr experimentell waren, aber es sollte ja trotzdem funktionieren.
Gleich zum Problem: Jede Anfrage an den internen Server, geht nach aussen; somit findet kein Caching statt. Der Inhalt wird aber dann richtig am Browser angezeigt.
Konfiguration: (Die Module mod_cache, mod_disk_cache und mod_mem_cache werden geladen)
<VirtualHost *:80>
DocumentRoot "/var/srv/www/htdocs"
ServerName www.server.tld:80
Verhindert das komprimieren der HTTP-Responses, falls der Client das unterstützen sollte (der Server tut das).
RequestHeader unset Accept-Encoding
ProxyPreserveHost On
ProxyPass /content http://extern.server.tld/content
CacheEnable disk /
das Verzeichnis existiert mit 770@wwwrun/www, es werden auch entsprechende Verzeichnisse/Dateien von Apache angelegt.
CacheRoot /tmp/apache_proxy_cache
</VirtualHost>
Also es werden Daten im Cache-Verzeichnis abgelegt, aber jede Anfrage wird durchgereicht. Ich habe mit wireshark die Requests geprüft, die sind immer gleich. Getestet habe ich das mit FF und IE, mit dem gleichen Ergebnis.
Ich habe auch verschiedene externe Server probiert (z.B.: ProxyPass / http://www.google.de/).
Vielleicht kennt jemand das Problem, sowie die Lösung dazu.
Mit bestem Dank im voraus.
mfg Martin
Mittels ProxyPass greife ich nun auf eine externe Site zu, das funktioniert auch reibungslos. Da ich den Zugriff beschleunigen und den Datentransfer reduzieren möchte, benutze ich die Cache-Module von Apache.
Ich habe schon gesehen dass die Cache-Module bei der 2.0.x-Version sehr experimentell waren, aber es sollte ja trotzdem funktionieren.
Gleich zum Problem: Jede Anfrage an den internen Server, geht nach aussen; somit findet kein Caching statt. Der Inhalt wird aber dann richtig am Browser angezeigt.
Konfiguration: (Die Module mod_cache, mod_disk_cache und mod_mem_cache werden geladen)
<VirtualHost *:80>
DocumentRoot "/var/srv/www/htdocs"
ServerName www.server.tld:80
Verhindert das komprimieren der HTTP-Responses, falls der Client das unterstützen sollte (der Server tut das).
RequestHeader unset Accept-Encoding
ProxyPreserveHost On
ProxyPass /content http://extern.server.tld/content
CacheEnable disk /
das Verzeichnis existiert mit 770@wwwrun/www, es werden auch entsprechende Verzeichnisse/Dateien von Apache angelegt.
CacheRoot /tmp/apache_proxy_cache
</VirtualHost>
Also es werden Daten im Cache-Verzeichnis abgelegt, aber jede Anfrage wird durchgereicht. Ich habe mit wireshark die Requests geprüft, die sind immer gleich. Getestet habe ich das mit FF und IE, mit dem gleichen Ergebnis.
Ich habe auch verschiedene externe Server probiert (z.B.: ProxyPass / http://www.google.de/).
Vielleicht kennt jemand das Problem, sowie die Lösung dazu.
Mit bestem Dank im voraus.
mfg Martin
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 51498
Url: https://administrator.de/contentid/51498
Ausgedruckt am: 26.11.2024 um 07:11 Uhr
1 Kommentar