Push-Nachrichten von MacTechNews.de
Würden Sie gerne aktuelle Nachrichten aus der Apple-Welt direkt über Push-Nachrichten erhalten?
Forum>Entwickler>Div. Webbrowser aktualisieren Webseite nicht / liegt es an diesen Meta-Tags?

Div. Webbrowser aktualisieren Webseite nicht / liegt es an diesen Meta-Tags?

dom_beta04.06.1115:40

Hallo,

wenn ich nach ein paar Tagen im Texteditor die HTML- und CSS-Dateien aktualisiere, hochlade und diese Seite mit dem Webbrowser anzeigen lasse, zeigt mir verschiedene Webbrowser (Safari und Firefox) immer die ältere Fassung an, also nicht das, was ich vorhin geändert habe.

Daher nun meine Frage, liegt dieses Verhalten an diesen Meta-Tags?

<meta http-equiv="cache-control" content="no-cache">
<meta http-equiv="pragma" content="no-cache">
<meta http-equiv="expires" content="0">


Oder an etwas anderem?


Vielen Dank!
„...“
0

Kommentare

dreyfus04.06.1116:39
Browser können diese Angaben ignorieren, die Auswertung ist optional. Soweit ich das bis jetzt gesehen habe, ignorieren alle Proxyserver und Suchmaschinen diese Tags ebenfalls und verwenden ausschliesslich die Cache Einstellungen, die im HTTP-Header (also vom Webserver) übermittelt werden. Falls es dein eigener Server ist, kannst Du die HTTP Header anpassen, falls es ein Account bei einem Hosting Provider ist, gibt es dafür eventuell gar keine Einstellung, oder sie ist auf der Konfigurationsseite deines Anbieters versteckt.

<meta http-equiv="pragma" content="no-store">
scheint beim FF aber zu funktionieren, während "no-cache" Null tut...
0
dom_beta05.06.1117:07

Hallo,

hat jemand noch eine Alternative?


Dreyfus Idee wird natürlich aufgegriffen.

Vielen Dank!
„...“
0
sierkb05.06.1119:42
W3C: RFC 2616: 13 Caching in HTTP (Text-Version)
W3C: RFC 2616: 14 Header Field Definitions: 14.9 Cache-Control (Text-Version)

IETF: RFC 2616: Hypertext Transfer Protocol -- HTTP/1.1 (HTML-Version)
IETF: RFC 2616: Hypertext Transfer Protocol -- HTTP/1.1: 14.9 Cache-Control (HTML-Version)
Note that HTTP/1.0 caches might not implement Cache-Control and
might only implement Pragma: no-cache (see section 14.32 ).

Es wäre also erstmal zu prüfen, welche HTTP-Version der betreffende Webserver da grad' spricht, ob nur HTTP 1.0 oder bereits HTTP 1.1 (es gibt im Netz durchaus noch ein paar alte Server-Installationen, die eben nur HTTP 1.0 und nicht HTTP 1.1 sprechen)
0
sierkb05.06.1120:06
Außerdem evtl. von Bedeutung/Belang/Interesse:

Christoph Schneegans: XHTML-Einmaleins: Content Negotioation :
[..]
Content Negotiation führt dazu, daß mit HTTP 1.0 Caching unmöglich wird. Caching von verhandelbaren Ressourcen ist auf die Header Vary, ETag, If-Match und If-None-Match angewiesen, und die gibt es erst in HTTP 1.1. (Es geht hier überhaupt nicht um den Host-Header; den schicken auch viele Benutzeragenten, die ansonsten nur HTTP 1.0 verstehen.) HTTP 1.0 ist keineswegs obsolet – standardmäßig ist im IE6 Extras → Internetoptionen… → Erweitert → HTTP 1.1 über Proxyverbindungen verwenden deaktiviert. Praktisch läuft das darauf hinaus, daß man Caching mindestens in öffentlichen Caches unterbinden muß. Sie müssen sich darüber im klaren sein, daß eine fehlerhafte Konfiguration des Servers fatale Auswirkungen haben kann, etwa wenn IE eine application/xhtml+xml-Ressource aus einem Cache erhält. Solche Fehler sind zudem nur sehr schwer aufzuspüren.
[..]
0
dom_beta05.06.1120:12
sierkb
Es wäre also erstmal zu prüfen, welche HTTP-Version der betreffende Webserver da grad' spricht


HTTP Version 1.1
„...“
0
netspy
netspy14.06.1100:04
Welche HTTP-Header liefert denn dein Webserver zurück? Testen kannst du das bspw. hier mit:
0
dom_beta14.06.1100:28
Er liefert das:
Status: HTTP/1.1 200 OK
Date: Mon, 13 Jun 2011 22:27:08 GMT
Server: Apache/2.2.0 (Fedora)
Last-Modified: Mon, 13 Jun 2011 20:41:40 GMT
ETag: (gestrichen)
Accept-Ranges: bytes
Content-Length: 2225
Connection: close
Content-Type: text/html; charset=UTF-8
„...“
0
dom_beta14.06.1100:34
ähm, noch mal neu:
HTTP Request Header

Connect to IP-ADDRESS on port 80 ... ok

HEAD / HTTP/1.1[CRLF]
Host: www.domain.tld[CRLF]
Connection: close[CRLF]
User-Agent: Googlebot/2.1 (+http://www.googlebot.com/bot.html)[CRLF]
Accept-Encoding: gzip[CRLF]
Accept-Charset: ISO-8859-1,UTF-8;q=0.7,*;q=0.7[CRLF]
Cache-Control: no-cache[CRLF]
Accept-Language: de,en;q=0.7,en-us;q=0.3[CRLF]
Referer: http://web-sniffer.net/[CRLF]
[CRLF]


HTTP Response Header

Name Value Delim
Status: HTTP/1.1 200 OK
Date: Mon, 13 Jun 2011 22:33:38 GMT
Server: Apache/2.2.0 (Fedora)
Last-Modified: Mon, 13 Jun 2011 20:41:40 GMT
ETag: "2e8421-8b1-f2468900"
Accept-Ranges: bytes
Content-Length: 2225
Connection: close
Content-Type: text/html; charset=UTF-8


PS: Die im Eingangspost erwähnten META-Tags habe ich vor ein paar Tagen aus allen HTML-Dateien entfernt. Sie sind nicht mehr Bestandteil der Webseite.
„...“
0
netspy
netspy14.06.1100:49
Da fehlt halt der Expires-Header, der dem Browser sagt, wie lange die Ressource maximal im Cache bleiben darf. Wenn du kannst, solltest du mod_expires im Webserver aktivieren und in der Doku nach der Konfiguration (geht auch über die .htaccess) nachschauen. Bei statischen Seiten ist eine Halbwertszeit von einem Tag ein guter Mittelwert.

Deine Angabe im HTML-Head über http-equiv ist dagegen ziemlich unzuverlässig. Deine Angaben sollten einen Browser zwar dazu veranlassen, die Seite nicht zu Cachen aber wie du siehst, beeindruckt das eher weniger.

Beachte aber, dass du nach jeder Änderung deinen Browsercache löschen und den Browser möglichst neu starten solltest. Machst du das nicht, bekommt dein Browser diese Änderungen gar nicht mit, da er die Seite mit den neuen Headern nicht noch mal neu läd.
0
dom_beta14.06.1101:30
Ich seh schon, das kann man alles über die .htaccess Datei einstellen.

Super.

Dann muß ich den Support nicht belästigen
„...“
0
dom_beta21.06.1201:46
Kann es sein, daß da was schief läuft?
Server: Apache/2.2.0 (Fedora)
Last-Modified: Wed, 20 Jun 2012 21:05:30 GMT
ETag: "6746e6-75b-c2517a80"
Accept-Ranges: bytes
Content-Length: 1883
Cache-Control: max-age=-9539
Expires: Wed, 20 Jun 2012 21:05:30 GMT
Connection: close
Content-Type: text/html; charset=UTF-8

der Wert für Cache Control ist negativ?
„...“
0

Kommentieren

Diese Diskussion ist bereits mehr als 3 Monate alt und kann daher nicht mehr kommentiert werden.