2012-07-19 8 views
14

Mój system to Windows 7 x64, Chrome 20.0.1132.57 m.Nagłówek HTTP "Wygasa" nie działa w przeglądarce Chrome

W moim nagłówka odpowiedzi HTTP, mam:

Cache-Control: public, max-age=1000 
Expires: *some date* 

W IE & FF, strona jest buforowane w lokalnym, a gdy próbuję uzyskać dostęp ponownie wpisując adres URL i naciśnij enter, żaden wniosek jest wyślij i strona jest wyświetlana poprawnie. Ale w Chrome, zawsze wysyła żądanie do serwera z następującym nagłówkiem:

Cache-Control: max-age=0 

nie chcę klient wysyła żądanie do serwera, a następnie odpowiedzieć 304. Chcę zaoszczędzić czas błądzenia .

Odpowiedz

15

Zachowaj ostrożność podczas testowania. Zauważyłem, że w wersji Chrome 20, gdy kliknę F5, aby ponownie załadować stronę, widzę nowe żądania. Dookoła, gdy umieszczę kursor na pasku tytułu, po bieżącym adresie strony i naciśnięto klawisz Enter, otrzymam zasoby z pamięci podręcznej, której nagłówek został ustawiony na pamięć podręczną.

Również lepiej użyj po prostu maksymalnego wieku. Maksymalny wiek i ważność są takie same, ale w wieku maksymalnym określasz czas trwania.

Zobacz to: http://betterexplained.com/articles/how-to-optimize-your-site-with-http-caching/ metod 3 i 4.

+0

Obawiam się, że to nie jest to, co widzę. Próbowałem nacisnąć Enter w pasku nawigacji, ale otrzymałem ten sam wynik. Myślę, że chrome może odgadnąć adres IP serwera, a jeśli jest to host lokalny, to zawsze wykona żądanie ... może Google chce sprawić, żeby programiści byli zadowoleni ... ale nie zrobili tego :( – davidshen84

+0

nawet na tej stronie, w trakcie sprawdzania żądań sieci widzę, że ga.js ma następujący nagłówek odpowiedzi: Wygasa: wt, 14 sierpnia 2012 20:37:18 GMT W przypadku odświeżenia F5 przeładowuje, w przypadku wprowadzenia w nav bar pochodzi z pamięci podręcznej –

+3

Myślę, że zorientowałem się ... jeśli to główna prośba zainicjowana przez użytkownika lub JS, Chrome zignoruje maksymalny wiek i wymusi wysłanie prośby ... piekło – davidshen84

3

miałem podobny problem i okazało się, że jeśli się wniosek o nowej karcie chrome będzie działać.