Wie konfiguriere ich Varnish so, dass alle Antworten auf übereinstimmende Anfragen "* .css" 30 Tage lang im Browser des Clients zwischengespeichert werden?
Ich versuche zu erreichen, dass Varnish die richtigen Einstellungen für "Expires:" und / oder "Cache-Control" festlegt, sodass alle CSS: s 30 Tage lang zwischengespeichert werden, unabhängig davon, was das Backend über die clientseitige Cachefähigkeit von sagt diese Objekte.
performance
cache
varnish
knorv
quelle
quelle
set beresp.http.magicmarker = "1"
unter Varnish 3 (Ubuntu Trusty)Ich glaube nicht, dass Sie mit Varnish die VCL-Regeln auf "* .css" setzen können. Möglicherweise müssen Sie auf der Lack-Mailingliste nach genauen Informationen dazu fragen. Das Scoping nach MIME-Typ sollte möglich sein.
Angenommen, für Ihre Objekte sind bereits Cache-Header festgelegt, Sie möchten sie jedoch normalisieren. Eine modifizierte Version dieser VCL für die Lackdokumentation sollte Ihnen dabei helfen: http://varnish.projects.linpro.no/wiki/VCLExampleLongerCaching
Im Allgemeinen wurde Varnish nicht dafür entwickelt, größere Mengen an Headern oder Inhalten neu zu schreiben. Ihre Webserver oder Webanwendungen sollten dies besser als Varnish tun.
quelle
Ich muss nur darauf hinweisen, dass Lack tatsächlich hervorragend zum Umschreiben von Headern geeignet ist. Das Testen auf eine beliebige URL ist in vcl_recv möglich, und in vcl_fetch ist dies eine häufige Anwendung für Lacke. In recv analysieren Sie eine eingehende Anfrage. Beim Abrufen analysieren Sie die Backend-Antwort.
Im Allgemeinen bearbeiten Sie die Anforderung in recv und leiten sie an ein Backend weiter. Sie bearbeiten die Antwort in fetch und schreiben die Header entsprechend um, bevor Sie das Objekt möglicherweise im Cache speichern und die Antwort übermitteln.
In holen können Sie tun
ebenso gut wie
und so weiter.
quelle