Veraltetes PDF wir auf mobilen Geräten angezeigt
-
Hallo zusammen
Ich habe eine WordPress-Seite mit dem Theme Enfold. Ich veröffentliche von Montag-Freitag jeweils ein wechselndes Tagesmenu für unser Restaurant auf unserer Homepage. Hierzu lade ich via FTP das Tagesmenu immer mit demselben Namen hoch. Bisher hat dies gut funktioniert.
Auf dem Computer wird weiterhin das aktuelle Tagesmenu angezeigt. Auf mobilen Geräten wird jedoch zwischendurch, wie jetzt auch wieder, ein altes PDF angezeigt. Dies ist für unsere Gäste natürlich blöd, weil viele mit dem Telefon das Menu abrufen wollen. Leider finde ich keine Lösungsansätze dazu und der Support des Themes meint, dass dies kein Themespezifisches Problem ist und kann mir auch nicht weiter helfen. Hat irgend jemand eine Idee?
Danke für die Hilfe.
Amanda
Die Seite, für die ich Hilfe brauche: [Anmelden, um den Link zu sehen]
-
Auf allen meinen Familienhandys wird die aktuelle Speisekarte von heute angezeigt. Lösche mal den Cache Deines Handys. Vielleicht hilfts. Hier für Äpfel
Lösche mal den Cache Deines Handys.
Und was soll das bringen? Es geht ja darum, dass die Besucher nicht immer wieder den Cache leeren müssen, um die aktuelle PDF-Datei zu sehen. Und woher sollen Besucher der Seite wissen, dass sie ihren Cache leeren müssen?
@amineah
Das könnte mit einer Erweiterung der Datei .htaccess (wenn der Apache als Webserver läuft) funktionieren:<IfModule mod_headers.c> <FilesMatch "\.pdf$"> Header set Cache-Control "no-store, max-age=0" </FilesMatch> </IfModule>-
Diese Antwort wurde vor 4 Monaten, 4 Wochen von
bscu geändert.
Was das bringen soll? Wenn ich als Besucher auf unseren vier verschiedenen Handys die aktuelle Datei sehe, ohne den Cache zu leeren, gehe ich davon aus, dass es am Cache seines Handy liegt. Und dann ist die Idee mit dem Cache leeren doch wiederum nicht so dumm, oder? Ich habe die Seite jetzt gerade mit meinem Handy und meinem Notebook geöffnet und es wird die aktuelle Speisekarte von heute angezeigt. Also muß ich als Besucher meinen Cache nicht leeren.
Hallo @amineah
solltest du ein Cache-Plugin installiert haben, wäre es hilfreich, wenn du die Seiten mit den Speisekarten in deinem Cache-Plugin ausschließt.Um dir da aber besser helfen zu können, wäre der Website-Bericht hilfreich:
Du findest unter Werkzeuge > Website-Zustand > Info einen Bericht zur Website. Warte bitte einen Moment bis die Ladeanzeige ganz oben abgeschlossen ist und kopiere dann per Button den Website-Bericht in deine Zwischenablage. Über den Button „Bericht in die Zwischenablage kopieren“ kannst du den Bericht unverändert (bitte mit den Akzentzeichen am Anfang und Ende) einfügen und anschließend hier posten. Evtl. ergeben sich dann weitere Anhaltspunkte, ob und wo das Problem liegt.
Hier ein Screenshot dazu (bei Klick auf das Bild, wird das Bild vergrößert):

Und mit z. B. STRG V in die Antwort bei diesem Thema einfügen.
Mehr Infos zum Website-Zustand findest du z. B. in dem folgenden Video
Viele Grüße
Hans-GerdNachtrag: Wenn ich das richtig sehe, ist WP Super Cache installiert.
Das kannst du wie folgt machen:- Gehe im WordPress-Dashboard zu Einstellungen → WP Super Cache.
- Wechsle zum Tab „Erweitert“.
- Scrolle zu „Abgelehnte URL Zeichenfolgen“ (englisch: „Rejected URL Strings“).
- Trage hier die eindeutigen URL-Teile der Seiten ein, die nicht gecacht werden sollen.
Siehe auch folgender Beitrag.
Was das bringen soll? Wenn ich als Besucher auf unseren vier verschiedenen Handys die aktuelle Datei sehe, ohne den Cache zu leeren, gehe ich davon aus, dass es am Cache seines Handy liegt.
Hattest du denn zuvor schon die alte Datei gesehen, also die Website vorher schon mal besucht, sodass überhaupt etwas im Cache gelandet sein könnte? 🙂
Es geht darum, dass Caches von der Website aus reguliert werden sollten, das heißt, Caches nur eine bestimmte zeitlang gültig sind oder aber z. B. auch beim Speichern einer Seite der ausgegebene Cache neu erstellt wird.
@amineah
Veröffentlichst du die Speisekarte immer mit demselben Namen? Du könntest die Cache-Falle umgehen, indem du die Datei immer anders benennst, also z. B. speisekarte_2025_woche38.pdf, nächste Woche dann speisekarte_2025_woche39.pdf oder so ähnlich.Da du die Datei per FTP hoch lädst, geht die Auslieferung der Datei an einen Besucher an WordPress vorbei – selbst wenn sie in einem individuell erstellten Verzeichnis in den WordPress Uploads liegt. Die Steuerung des Caches erfolgt dadurch einzig über den HTTP-Header, den der Webserver zu der Datei liefert. Wie der ermittelt wird, hängt wiederum vom Webserver ab. Bei einer normalen Einstellung im Webserver wird das Dateidatum für diese Cache-Angabe verwendet und somit sollte auch immer aktuell sein.
Wenn eine veraltete Datei geladen wird, kann das folglich 2 Ursachen haben:
- Der Webserver liefert den falschen (alten) Wert.
- Der Cache vom aufrufenden Browser ignoriert den Wert.
Beides kann man mittels WordPress nicht weiter beeinflussen.
Hat irgend jemand eine Idee?
Gleich mehrere:
- Verwende individuelle Dateinamen für die Datei und lade diese weiterhin per FTP hoch.
Vorteil: der Besucher wird dann wirklich immer die tagesaktuelle Datei laden.
Nachteile:
Du musst jedes Mal in WordPress und dort den Link in der Startseite anpassen.
Und die bisher gewohnte URL ändert sich. Für Stammbesucher ggfs. von Nachteil. - Verwende individuelle Dateinamen für die Datei und lade diese in WordPress hoch.
Vorteil: der Besucher wird dann wirklich immer die tagesaktuelle Datei laden.
Nachteil: die bisher gewohnte URL ändert sich. Für Stammbesucher ggfs. von Nachteil. - Eine serverseitige Einstellung die die HTTP-Cache-Angabe deaktiviert. Ich sehe, dass dein Hosting nginx verwendet, dann wäre hier eine Anleitung dazu: https://stackoverflow.com/questions/50344766/nginx-disable-cache-in-specific-folder-for-a-specific-file-type – bei Fragen wende dich an den Support deines Hosters hierzu.
Vorteile:
Die URL würde sich nie ändern, wie bisher auch.
Der Besucher wird dann wirklich immer die tagesaktuelle Datei laden. - Verwende individuelle Dateinamen für die Datei, lade diese weiterhin per FTP hoch und ergänze im nginx Webserver eine Weiterleitung von der ursprünglichen URL auf die jeweils aktuelle. Das ist schon etwas komplexer und würde das Thema des Forums sprengen. Hierfür würde ich dir einen Entwickler empfehlen der sich mit nginx auskennt.
- Möglich wäre auch eine komplexere individuelle Programmierung bei der du weiterhin die Datei hochlädst wie immer, der Klick auf den Button führt aber zu einer PHP-Datei die die Datei mit eigenem HTTP-Header ausgibt (statt dem vom Webserver). Auch hier würde ich empfehlen einen Entwickler dafür zu suchen.
Fraglich ist für mich auch, ob das was du beschreibst bei mehreren mobilen Endgeräten aufgetreten ist oder nur bei einem. Wenn es nur Einzelfälle sind, dann liegt vermutlich eher eine Fehlkonfiguration auf deren Seite vor, die du nicht beeinflussen kannst.
Selbst wenn ich nochmal als sehr unwissend dargestellt werde: ich mache das Gleiche auf einer Vereinswebsite. Die PDF-Datei mit dem Veranstaltungskalender wird mit gleichem Dateinamen durch eine Person hochgeladen, ohne dass irgendwas geändert werden muss, und es wird jedes Mal und für jeden die aktuelle Fassung angezeigt. Deswegen war es ja meine Idee, dass es nur auf dem Handy des Threadstarters nicht aktualisiert wird. Wenn es nicht so ist habe ich vielleicht das Glück auf meiner/unserer Seite.
Selbst wenn ich nochmal als sehr unwissend dargestellt werde
.
Das liegt uns hier im Forum fern, Diskussionen sind rein pragmatischer Natur. Es geht hier auch nicht darum, wer Recht hat, sondern darum, eine Lösung zu finden. Also bitte nimm Gegenargumente nicht persönlich, denn das sind sie nicht, tut mir leid, wenn es dich getriggert hat.Ich hatte zum Beispiel überlesen, dass die Datei „immer mit demselben Namen per FTP“ hochgeladen wird. Wie threadi oberhalb ausführlich schrieb, macht es einen Unterschied (auch beim Caching), ob die Datei von WordPress verarbeitet wird oder nicht.
Wie lädst du denn das PDF hoch?
Nein, keine Sorge, aber das ist halt so meine Art zu kommunizieren, ich nehme nie was krumm ;-)) (das verbietet schon mein Alter)
Also: die PDF-Datei, die ständig erneuert werden soll, liegt in einem Ordner „PDF“ im Root der Site. Die neue oder korrigierte PDF-Seite wird dann per FTP in eben diesen Ordner hochgeladen und nach der „Löschen“-Rückfrage eingefügt. Und ab da ist das neue Blatt zu lesen. Ob der Themenstarter das auch so macht?
-
Diese Antwort wurde vor 4 Monaten, 3 Wochen von
kurt1946 geändert.
Ob der Themenstarter das auch so macht?
Aus dem Eingangspost:
Hierzu lade ich via FTP das Tagesmenu immer mit demselben Namen hoch.
Ja, habe ich ja ebenfalls gelesen. Aber wenn zwei das Gleiche machen sollte eigentlich auch das gleiche Ergebnis herauskommen, Und nochmal-deswegen meine einfache Überlegung mit dem Cache. Wäre schön, wenn mal ne Zwischenmeldung käme, vielleicht ist es ja schon erledigt ;-(
-
Diese Antwort wurde vor 4 Monaten, 3 Wochen von
kurt1946 geändert.
Hattest du denn zuvor schon die alte Datei gesehen, also die Website vorher schon mal besucht, sodass überhaupt etwas im Cache gelandet sein könnte?
Nein, aber gestern war ich drauf, und heute wird mir wieder die aktuelle Speisekarte angezeigt. wie ist es denn bei Euch?
Aber wenn zwei das Gleiche machen sollte eigentlich auch das gleiche Ergebnis herauskommen
Das trifft nur zu wenn beide auch das identische Hosting mit identischer Konfiguration, identischem eigenen Internetzugang, identischen Browser und identischen WordPress-Installationen verwenden. Die Wahrscheinlichkeit, dass das zutrifft ist gleich 0. Daher gibt es auch hier im Forum die Regel nur 1 Frage pro Thema zu stellen, da man in einem Thema nicht mehrere eindeutig verschiedene Fälle analysieren kann. Deine Konfiguration kannst du nicht mit der von jemand anderem Vergleichen ohne auch alle Randbedingungen zu beachten, wie in diesem Fall vermutlich den serverseitig erzeugten Marker für den Cache, der sich bei euch unterscheiden wird da ihr sicherlich nicht ein identisches Hosting nutzt.
Ach ja, wie recht du hast ;-). Ich werde nie mehr versuchen, eine Lösungsidee zu präsentieren. Fragen stellen reicht ja auch. Dabei hätte mir ja schon gereicht, wenn der Satz gekommen wäre: nö, ist nicht der richtige Lösungsansatz Punkt
-
Diese Antwort wurde vor 4 Monaten, 3 Wochen von
kurt1946 geändert.
-
Diese Antwort wurde vor 4 Monaten, 4 Wochen von
Du musst angemeldet sein, um auf dieses Thema zu antworten.