Zauważyliśmy, że Chrome buforuje pliki lokalnie i nie wysyła nawet żądania do naszego serwera, aby sprawdzić, czy jest dostępna nowsza wersja pliku javascript.Czy Chrome narusza standardy pamięci podręcznej?
Przykład nagłówków odpowiedzi HTTP do pliku js, że Google buforowane:
Accept-Ranges:bytes
Access-Control-Allow-Headers:Content-Type
Access-Control-Allow-Methods:GET, POST, PUT, DELETE, OPTIONS
Access-Control-Allow-Origin:*
Content-Encoding:gzip
Content-Length:5479
Content-Type:application/javascript
Date:Tue, 12 Jan 2016 22:46:07 GMT
ETag:"7d68e1ceb647d11:0"
Last-Modified:Tue, 05 Jan 2016 12:44:25 GMT
Server:Microsoft-IIS/8.5
Vary:Accept-Encoding
x-robots-tag:noindex
Czy to ważne, że Chrome buforowane plik? Nie ma nagłówka lub czegoś, co deklaruje, że plik może być buforowany lokalnie, ma tylko ETag i Last-Modified.
BTW
Czy istnieje sposób (być może nagłówek), aby poinstruować Chrome, aby sprawdzić, czy w pamięci podręcznej plik został zmieniony bez dołączania wersję do nazwy pliku? Ustawienie no-cache nie jest opcją, ponieważ chcę, aby było buforowane, ale chcę używać nagłówków ETag i Last-Modified tak, jak powinno.
Nie mam odpowiedzi na główne pytanie, ale wiesz o tym? http://stackoverflow.com/a/7000899/704097 –
Również powiązane: http://stackoverflow.com/questions/8294034/chrome-browser-is-not-sending-if-modified-since-header-to- server –
@Miquel, tak, znam tę opcję w narzędziach programistycznych. Ale nie mogę i nie chcę, aby moi użytkownicy używali tego i wyczyścili całą pamięć podręczną mojej witryny ... – gdoron