Używanie tagów do wyłączania buforowania we wszystkich przeglądarkach? [duplikat]

To pytanie ma już odpowiedź tutaj:

Czytałem, że gdy nie masz dostępu do nagłówków serwera www możesz wyłączyć cache używając:

<meta http-equiv="Cache-Control" content="no-store" />

Ale czytałem też, że to nie działa w niektórych wersjach IE. Czy istnieje jakiś zestaw tagów , które zmienią Wyłącz pamięć podręczną we wszystkich przeglądarkach?

Author: Rao Adnan, 2009-08-27

6 answers

Dla nowoczesnych przeglądarek internetowych (po IE9)

Zobacz duplikat wymieniony na górze strony, aby uzyskać poprawne informacje!

Zobacz odpowiedź tutaj: Jak kontrolować buforowanie stron internetowych we wszystkich przeglądarkach?


Dla IE9 i przed

Nie ślepo Kopiuj Wklej to!

Lista to tylko przykłady różnych technik, nie jest do bezpośredniego / align = "left" / W przypadku skopiowania, drugi nadpisze pierwszy i czwarty nadpisałby trzeci ze względu na http-equiv deklaracje I fail z walidatorem W3C. Co najwyżej można było jedną z każdej deklaracji http-equiv; pragma, Cache-control i wygasa. Są one całkowicie przestarzałe w przypadku korzystania z nowoczesnych, aktualnych przeglądarek. Po IE9. Chrome i Firefox specjalnie nie działają z nimi, jak można się spodziewać, jeśli w ogóle.

<meta http-equiv="cache-control" content="max-age=0" />
<meta http-equiv="cache-control" content="no-cache" />
<meta http-equiv="expires" content="0" />
<meta http-equiv="expires" content="Tue, 01 Jan 1980 1:00:00 GMT" />
<meta http-equiv="pragma" content="no-cache" />

Właściwie nie używaj ich w ogóle!

Buforowanie nagłówków jest zawodne w elementach meta; dla jednego, Dowolna sieć proxy między witryną a użytkownikiem całkowicie zignorują oni. Zawsze powinieneś używać prawdziwego nagłówka HTTP dla nagłówków takich jak Cache-Control i Pragma.

 677
Author: CommonKnowledge,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2018-06-30 21:14:16

Jest to link do świetnego studium przypadku na temat niezrozumienia kontrolowania pamięci podręcznych w całej branży.

Http://securityevaluators.com/knowledge/case_studies/caching/

Podsumowując, zgodnie z tym artykułem tylko Cache-Control: no-store jest rozpoznawany przez Chrome, Firefox i IE. IE rozpoznaje inne kontrolki, ale Chrome i Firefox nie.

 73
Author: Paul,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2014-10-21 19:55:16

Nie działa w IE5, ale to nie jest duży problem.

Jednak buforowanie nagłówków jest zawodne w elementach meta; po pierwsze, wszelkie serwery proxy między witryną a użytkownikiem całkowicie je zignorują. Powinieneś zawsze używać prawdziwego nagłówka HTTP dla nagłówków takich jak Cache-Control i Pragma.

 25
Author: bobince,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2009-08-27 13:30:50

Pragma to Twój najlepszy wybór:

<meta http-equiv="Pragma" content="no-cache">
 5
Author: Kshitij Saxena -KJ-,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2009-08-27 13:30:18

Zauważyłem pewne problemy z buforowaniem wywołań serwisowych podczas powtarzania tego samego wywołania serwisowego (długie sondowanie). Dodawanie metadanych nie pomogło. Jednym z rozwiązań jest przekazanie timestamp, aby upewnić się, że ie uważa, że jest to inne żądanie usługi http. To zadziałało dla mnie, więc dodanie fragmentu kodu skryptowego po stronie serwera, aby automatycznie zaktualizować ten tag, nie zaszkodzi:

<meta http-equiv="expires" content="timestamp">

 4
Author: Elad Elrom,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2016-02-15 06:27:17

Spróbuj użyć

    <META HTTP-EQUIV="Pragma" CONTENT="no-cache">
    <META HTTP-EQUIV="Expires" CONTENT="-1">
 -3
Author: orf,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2012-11-07 12:57:13