-
Data: 2009-01-13 12:07:54
Temat: Przeglądarki zbyt mocno keszują
Od: Maciej Łebkowski <m...@e...com> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]Witam,
Wstawiłem na stronie mechanizm wspomagający cache przeglądarek.
Konkretnie, polegało to na wstawieniu nagłówków:
ETag: md5(content)
Last-Modified: date(r, filemtime(plik z contentem))
Date: date(r)
Expires: date(r, strtotime(+10 minutes))
Wszystkie wartości są dobrze przekazywane (tzn, jesli content sie
zmieni, to faktycznie zmienia sie etag i odpowiednio last-modified)
Efekt, jaki obserwuję:
Firefox, czasami (nie wiem dokładnie kiedy), w ogóle nie wykonuje
zapytania do serwera (LiveHTTP headers milczy, log apache rowniez).
Rozumiem, że jest to naturalne zachowanie, gdyż wysyłany jest
dziesieciominutowy czas wygasniecia (Expire). Dziwi mnie jednak,
ze dzieje sie tak tylko czasami - raz czesciej, raz rzadziej. Nie
udało mi się odnaleźć żadnej sensownej zależności.
Problem: wysyłanie komentarza
Po dodaniu komentarza, user ląduje na "thank you page", z ktorej
moze sie cofnac do komentowanej strony. Ta oczywiście jest ciągnięta
z cache i user jest zmieszany (hej, gdzie moj komentarz?!). Aby tego
uniknąć, odpowiedz na POST-a wygląda mniej wiecej tak:
HTTP/1.x 302 Found
Date: Tue, 13 Jan 2009 11:37:11 GMT
Location: thankyou.html
Expires: -1
Pragma: no-cache
Cache-Control: no-cache
Jednak przeglądarka nic sobie z tego nie robi - nadal pobiera strone
z cache. Zaobserwowane na Safari i Firefoksie, więc podejrzewam, ze
robię coś źle.
Mógłbym zmienić adres, do ktorego wraca user (jakiś ?bust dodać), ale
kłóci się to z zasadą "jeden wpis, jeden adres".
Jak więc w takim modelu zasugerować odświeżenie informacji o stronie?
--
Maciej Łebkowski
Następne wpisy z tego wątku
- 13.01.09 12:26 pasman
- 13.01.09 12:34 Ramok
- 13.01.09 12:35 Maciej Łebkowski
- 13.01.09 12:53 pasman
- 13.01.09 13:08 pasman
- 13.01.09 13:16 Maciej Łebkowski
- 13.01.09 13:18 Maciej Łebkowski
- 13.01.09 15:42 ethanak
- 13.01.09 16:34 Maciej Łebkowski
- 13.01.09 19:09 emil
- 13.01.09 19:49 Maciej Łebkowski
- 13.01.09 20:27 porneL
- 13.01.09 20:36 porneL
- 13.01.09 22:32 Maciej Łebkowski
- 13.01.09 23:17 emil
Najnowsze wątki z tej grupy
- Jakie znacie działające serwery grup dyskusyjnych?
- is it live this group at news.icm.edu.pl
- php, linki z nazwami a $_GET, SEO
- www polityka pl captcha
- dyktatura brudnego palucha
- www.znanylekarz.pl
- Czy pytanie o sczytywanie stron programami/skryptami to tu?
- Grupy webdevowe
- Jak wydrukować stronę?
- IIS, kilka witryn
- linki <a href="/strona.php"> (ze slashami)
- co rozszerza stronę??
- responsywny akapit <p>
- Czy istnieje jakiś emulator przeglądarek pod Mac'a?
- taka sama konfiguracja dla localhost i produkcji
Najnowsze wątki
- 2025-01-29 Ostrów Wielkopolski => Area Sales Manager OZE <=
- 2025-01-29 Warszawa => Architekt rozwiązań (doświadczenie w obszarze Java, AWS
- 2025-01-29 Poznań => Konsultant wdrożeniowy Comarch XL/Optima (Księgowość i
- 2025-01-29 Poznań => Specjalista ds. Employer Brandingu <=
- 2025-01-29 Warszawa => Developer Microsoft Dynamics 365 Finance & Operations (D36
- 2025-01-29 Warszawa => Junior Rekruter <=
- 2025-01-29 Warszawa => Mid IT Recruiter <=
- 2025-01-29 Białystok => UX Designer <=
- 2025-01-29 Katowice => Regionalny Kierownik Sprzedaży (OZE) <=
- 2025-01-29 Warszawa => Expert Recruiter 360 <=
- 2025-01-29 Zdalny podpis
- 2025-01-29 Nazbyt "muzyczne" słuchawki
- 2025-01-29 Warszawa => QA Engineer <=
- 2025-01-29 Prawo jak je [nie]rząd rozumie.
- 2025-01-29 Gdańsk => Specjalista ds. Sprzedaży <=