Frage

Ich bin versucht zu set up a reverse caching proxy für die Anzeige von Grafiken (gif, jpg, swf) dienen.Die Proxyfunktion ist in Ordnung, und das senden der Anforderung an den Ursprungsserver, aber ich kann nicht scheinen, um herauszufinden, warum der Inhalt nicht zwischengespeichert.Meine aktuelle config ist unten.Das Ziel ist, den cache, alle Anfragen, die mit dem /ca/ URI-Präfix.Die origin-server dient, die Dateien mit sauberen URLs, keine Datei-Erweiterungen, Cache-control max-age=1 Woche auf der origin-server-Header.

ProxyRequests Off
<Proxy *>
 Order deny,allow
 Allow from all
</Proxy>
<IfModule mod_disk_cache.c>
 CacheEnable disk /
 CacheRoot "/var/cache/mod_proxy"
 CacheDirLevels 3
 CacheDirLength 5
 CacheIgnoreCacheControl On 
</IfModule>

RewriteCond %{REQUEST_URI} ^/ca/*
RewriteRule ^/(.*)$ http://origin.webserver.com/$1 [P,L]

Derzeit ist die einzige caching-ich habe gesehen, tatsächlich passiert, ist, dass die lokalen Dateien zugreifen, die auf den proxy-Servern, ich bin auf der Suche nach dem, was ich bin fehlt, um Inhalte abgerufen von der origin-server zwischengespeichert werden.

Ich wundere mich, wenn es hat zu tun mit mod_cache nicht Zwischenspeichern, da der Inhalt holte aus dem Ursprungs-server, und nicht einen Speicherort auf der Festplatte.Auf der Suche nach einem Weg, um zu erzwingen, dass alle Anforderungen passenden Präfix zwischengespeichert werden.

Vielen Dank!

p.en.- sieht aus wie ich habe genau dieses Problem: http://mail-archives.apache.org/mod_mbox/httpd-users/200901.mbox/%3C497F6ED3.7080606@gmail.com%3E.Checken mein Berechtigungen und gehen über den debug-Mitteil...

War es hilfreich?

Lösung

Das hinzufügen dieser Richtlinien schien kick der cache-Mechanismus in Gang.Ich vermute, es hat damit zu tun, den Ablauf und die cache-control-Header, wie vom Ursprungsserver gesendet da ich die Bilder mit Symfony/PHP5 statt direkt aus dem Dateisystem.

<IfModule mod_disk_cache.c>
    CacheEnable disk /
    CacheRoot "/var/cache/mod_proxy"
    CacheDirLevels 3
    CacheDirLength 5
    CacheIgnoreCacheControl On
    CacheMaxFileSize 100000000
    CacheIgnoreNoLastMod On
    CacheMaxExpire 1209600
    CacheIgnoreQueryString On
</IfModule>
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top