Schwache ETAGs in Rails?

8

Wie kann man Schienen am besten sagen, schwache statt starke ETAGs zu verwenden, wenn sie die Methoden fresh_when verwenden? und stale? ?

Der Grund, warum ich frage ist, dass nginx (korrekt) starke ETAG-Header aus Antworten entfernt, wenn Sofort-Gipping ist aktiviert .

    
KaptajnKold 09.09.2013, 07:51
quelle

4 Antworten

6

Ich nahm den Code aus @ grossers Antwort und verwandelte ihn in einen Edelstein:

Sie können dies einfach zu Ihrer gemfile hinzufügen:

%Vor%

Und es wird in Ihrer Middleware vor Rack::ConditionalGet installiert:

%Vor%

Dann werden alle e-tags, die von rails generiert werden, entweder mit Rack :: ETag oder mit expliziten e-tags, in weak konvertiert. Verwenden einer gepatchten oder Version & gt; 1.7.3 von nginx, dann können Sie E-Tags und Gzip-Komprimierung verwenden.

RACK 1.6 Standardeinstellungen Etags zu schwach - dieses Juwel ist nicht mehr hilfreich, wenn Sie upgraden.

    
John Naegle 10.07.2014, 16:53
quelle
3

Middleware:

%Vor%

plus Middleware hinzufügen

%Vor%

plus Unit-Tests

%Vor%

plus Integrationstests

%Vor%     
grosser 08.01.2014 18:24
quelle
1

Es sieht so aus, als ob Rack :: ETag in Zukunft schwache Etags verwenden wird:

John Naegle 18.08.2014 17:54
quelle
1

Hier ist eine Alternative, die Änderungen in Ihrem Anwendungsserver vermeidet. Diese Anweisung konvertiert alle von Ihrer Anwendung zurückgegebenen Etags in schwache Etags, bevor sie von der Antwort entfernt werden. Setzen Sie es in Ihre Nginx-Konfiguration:

%Vor%

Ich habe überprüft, dass dies mit nginx 1.7.6 funktioniert.

    
Graeme 23.10.2014 05:33
quelle

Tags und Links