Aloha ;)
- Oder könnte es dennoch ein Server-Fehler sein, (ich bin bei ISP/Hoster: Dogado.de nur falls jmd. das interessiert oder den Anbieter kennt)
Ja, kann es! Mein Hoster (one.com, billig, zuverlässig, aber manchmal etwas schrullig) hat für statische Seiten einen recht aggressiven Varnish-Cache serverseitig dazugeschaltet, über den man nichts erfährt, wenn man nicht zufällig drüberstolpert.
Konkret hatte ich festgestellt, dass meine Änderungen an statischen HTML-Seiten lange nicht übernommen wurden. Ich habe gesucht und gesucht und nix gefunden, alle Gründe fürs Cachen waren ausgeschlossen. Dann hab ich meinen Support angeschrieben und mal nachgehakt, ob die da irgendwo nochmal cachen - und siehe da, ja, das tun sie. Ich bekam dann die Direktive zum Abschalten des Cache für meine htaccess mitgeteilt - und nachdem ich dann wusste nach was ich suche habe ich die Anmerkung sogar noch in einer Hilfe-Seite meines Hosters gefunden.
Bitte nicht falsch verstehen! Bei dir hilft das mit großer Wahrscheinlichkeit nicht. Wollte nur sagen: Es ist immer möglich, dass der Provider auch noch dazwischengrätscht.
ich bin nun auch nicht so bewandert, als dass ich mit Apache testen könnte usw. und es fehlt mir auch einfach die Zeit für sowas, aber wenn ich den Provider mal anrufen würde, was könnte man dem denn sagen, oder könnte ich auf "meinem" Benutzerkonto, (File-Manager) des Dogado-Servers wo ich grade drauf schaue, ein Skript hochladen?, und wie müsste das eingestellt sein, oder lauten, bitte um Entschuldigung, wenn oben schon was in der Richtung stand, ich es aber einfach nicht verstanden habe; denn eigentlich sollte es doch Aufgabe des Hosters sein, dies für einen "normalen" Endkunden, der einfach ein oder zwei Domains dort hat, korrekt vorzukonfigurieren?!
Jein. Ja, eigentlich schon. Mein Hoster hat das dank Varnish-Cache allerdings auch ver****.
Du hast danach gefragt, wo du da was einstellen kannst, damit dein Server das „richtige“ ausliefert. Glücklicherweise gibt es da eine Möglichkeit. Ich nehme an, dass Dogado wie die meisten anderen auch einen Apache-Server betreibt. Für Apache gibt es die Möglichkeit, in jedem Verzeichnis eine Datei mit dem speziellen Dateinamen .htaccess
zu haben, in der man dann den Apache in Bezug auf den aktuellen Ordner und untergeordnete Ordner konfigurieren kann.
Wenn du grundsätzlich bei allen angeforderten Dateien die Direktive zum nicht-cachen von deinem Server mitschicken lassen willst, kann in der .htaccess
sowas stehen:
<ifModule mod_headers.c>
Header set Cache-Control "max-age=0, no-cache, no-store, must-revalidate"
Header set Pragma "no-cache"
Header set Expires "Wed, 11 Jan 1984 05:00:00 GMT"
</ifModule>
Falls du das nur für bestimmte Dateien (zum Beispiel nur html-Dateien), dann kann das so aussehen:
<filesMatch "\.(html|htm)$">
<ifModule mod_headers.c>
Header set Cache-Control "max-age=0, no-cache, no-store, must-revalidate"
Header set Pragma "no-cache"
Header set Expires "Wed, 11 Jan 1984 05:00:00 GMT"
</ifModule>
</filesMatch>
Damit wird das, was du in deinem HTML-Dokument drin hast, schon da gesagt, wo es eigentlich gesagt gehört: Im head
der Serverantwort auf den Request.
Grüße,
RIDER