Hilfe:Cache

aus Wikipedia, der freien Enzyklopädie

Wikipedia-Seiten werden an mehreren Stellen in sogenannten „Caches“ zwischengespeichert, um die Server zu entlasten. Ein solcher Speicher, der Browser-Cache, befindet sich auch auf dem Rechner jedes Benutzers und nimmt automatisch jede besuchte Seite auf, so dass diese bei Wiederaufruf nicht neu geladen werden muss. Ein weiterer Zwischenspeicher ist der Kennisnet-Cluster in Amsterdam, eine Reihe von Servern, die zwischen Wikipedia-Server und Benutzer geschaltet sind und prinzipiell ähnlich arbeiten, aber die Seiten für tausende Besucher bereithalten.

Leider kommt es durch diese Zwischenspeicherung manchmal zu Problemen, so dass der Benutzer noch immer eine alte Fassung eines Artikels sieht, obwohl er in der Datenbank längst aktualisiert wurde.

Diese Seite beschreibt, wie man mit derartigen Fehlern umgeht, und erreicht, dass der Browser-Cache geleert und dadurch eine aufgerufene Seite neu vom Server heruntergeladen wird, ebenso wie, dass der Server die aktuelle Version ausliefert.

Browsercache „leeren“/aktualisieren

Zum Aktualisieren (Neu-Laden) einer Webseite (inklusive aller für eine Webseite im Cache befindlichen Komponenten) verfügen die verschiedenen Webbrowser über unterschiedliche Tastaturbefehle:

Google Chrome Strg+F5 oder Umschalt+F5
Mozilla Firefox Unter Microsoft Windows und Linux:
Strg+F5 oder Strg+Umschalt+R[1]

Unter macOS:
+R (Seite neu laden) oder +Umschalt+R (Seite neu laden und Cache überschreiben)

Edge F5 oder Strg+R, falls das nicht hilft Umschalt+F5 oder Umschalt+Strg+R
Internet Explorer Strg+F5[2]
Opera bis Version 12 Strg+R oder F5
Opera ab Version 15 Strg+F5 oder Umschalt+F5
Safari Unter macOS:
++E (Browsercache „leeren“) bzw. +R (aktualisieren)

Unter Microsoft Windows:
Strg+R

Konqueror Strg+R
Camino Strg+R

Weiterführende Links

  1. Mozilla Hilfe und Support: Firefox – Wie Sie den Cache leeren können, Tastaturkürzel, auf mozillaZine: Auswirkungen der Cache-Einstellungen (engl.)
  2. Microsoft Hilfe und Support: Internet Explorer – Tastenkombinationen, Einfluss der Cache-Einstellungen auf das Browsen

Die vorstehend benannten Methoden betreffen in ihrer Grundversion das in der URL angezeigte HTML-Dokument, in der angegebenen erweiterten Fassung zusammen mit Strg die momentane Seite mit allen eingebundenen Ressourcen (vor allem Bilder, Skripte, Stile) unter deren URL.

Wenn Ressourcen nicht (mehr) unter ihrer URL in diese Seite eingebunden sind, bleibt das wirkungslos. Eine schärfere Methode ist es, den gesamten Browser-Cache von der Festplatte zu löschen; siehe dazu WP:JS.

Serverseitigen Cache leeren

Bleibt das Leeren des Browsercaches erfolglos, kann den Servern in Amsterdam mitgeteilt werden, dass sie eine Seite aus ihrem Datenbestand entfernen und neu von den eigentlichen Wikipedia-Servern beziehen sollen. Dieses „Bereinigen“ (englisch purge) zeigt im Normalfall sofort Wirkung, in seltenen Fällen kann es jedoch auch einige Minuten dauern.

Bei Artikeln

Beispiel: Servercache mit „Seite bearbeiten“ leeren
Alle Benutzer müssen das Leeren des Servercaches erst bestätigen

Die Aufforderung wird über ein angehängtes ?action=purge in der Adresszeile des Browsers übermittelt, hierzu

  1. Lade den Artikel wie üblich.
  2. Klicke in die Adresszeile deines Webbrowsers, füge am Ende der Adresse den Befehl ?action=purge ein, also zum Beispiel https://en.wikipedia.org/wiki/Hauptseite?action=purge
    Alternativ kannst du auch auf „Seite bearbeiten“ klicken und action=edit durch action=purge ersetzen.
  3. Rufe diese Adresse auf, indem du Enter drückst.
  4. Nun musst du noch durch einen Klick auf „Ok“ bestätigen.

Oft wird auch ein sogenannter „Nulledit“ empfohlen, der prinzipiell dieselben Auswirkungen hat. Wird eine Seite abgespeichert, ohne dass sich der Quelltext von der aktuellen Version unterscheidet, so wird keine Bearbeitung vorgenommen – es wird keine neue Version erzeugt. Die Seite ist jedoch als touched markiert und wird neu aufgebaut (siehe technische Informationen). Bei einem Purge mit der URL-Methode können jedoch keine Bearbeitungskonflikte oder ähnliche negative Auswirkungen auftreten.

Bei Bildern und Videos

Wird der Purge-Befehl (Bereinigung) auf eine Dateibeschreibungsseite angewandt, so kann die MediaWiki-Software gezwungen werden, alle Vorschaubilder (engl. thumbnails) des betreffenden Bildes/Videos erneut zu generieren.

Zu beachten ist hier, dass zwischen Mediendateien auf Wikipedia und Wikimedia Commons unterschieden wird. Daher ist darauf zu achten, dass ein Bereinigen auf der dortigen Dateibeschreibungsseite erforderlich ist, siehe dazu auch Help:Purge (engl.). Zudem gibt es dort in den Einstellungen mehrere Funktionen, die auf jeder Dateibeschreibungsseite den Purge-Befehl als Button zur Verfügung stellen.

Wenn ein Vorschaubild nicht erfolgreich generiert wurde, nachdem auf die Originaldatei der Purge-Befehl angewandt wurde, so hat der Server wahrscheinlich eine Fehlerseite mit der Adresse des Vorschaubildes gespeichert, jedoch wurde die Seite nicht aus dem Cache gelöscht, weil das zugehörige Vorschaubild nicht existiert.

Die Lösung ist, das Vorschaubild mit einer ungewöhnlichen Adresse aufzurufen, beispielsweise durch Anhängen der Zeichenfolge ?1 am Ende der Adresse. Also beispielsweise: Rechtsklick auf das Vorschaubild → Grafik anzeigen → in der Browser-Adressleiste am Ende ?1 hinzufügen und Enter drücken.

Das Vorschaubild sollte dadurch erfolgreich generiert werden. Abschließend führe den Purge-Befehl auf die Dateibeschreibungsseite erneut aus, um die gespeicherte Fehlerseite aus dem Cache des Servers zu entfernen. Sollte all dies bisher nicht geholfen haben, so ist anstatt des Zusatzes ?1 der Anhang des Purge-Befehls notwendig: Dateiname.jpg?action=purge – dies führt zur gewünschten Aktualisierung der jeweiligen Vorschau.

Wenn eine neue Version eines eingebundenen Bildes andere Dimensionen hat, ist oft im Artikel ein #Nulledit (ohne Veränderung) notwendig, um das Bild nicht verzerrt angezeigt zu bekommen.

Anmerkung zu SVG-Grafiken: Hier kann ein anderes Problem auftreten: Die Vektorgrafik enthält ein eingebettetes Pixelbild. Für weitere Details siehe Warum wird meine SVG nicht angezeigt?

  • Eine relativ wirksame Möglichkeit, wenn das Purge auf die Dateibeschreibungsseite nicht erfolgreich war, ist beispielsweise bei SVG die Anwendung auf die Mediendatei:
    • //de.wikipedia.org/w/index.php?title=Media:***** .svg&action=purge
    • //commons.wikimedia.org/w/index.php?title=Media:***** .svg&action=purge

Falls die Datei nach dem Purge immer noch nicht angezeigt wird, sollte man den Browsercache überprüfen.

Bei Formeln

Um gerenderte Formeln einer Seite neu rendern zu lassen, muss die Seite mit action=purge aufrufen werden. Hinterher muss man den Browsercache leeren, weil sonst die neu erstellten Bilder für die Formeln nicht geladen werden. Siehe hierzu auch mw:Extension:Math#Purging pages that contain equations.

Nulledit

Mit „Nulledit“ werden zwei unterschiedliche Aktivitäten bezeichnet:

  1. Bearbeitung, durch die nichts am Wikitext verändert wird.
    • Ein Nulledit aktualisiert die über Vorlagen gesetzten Links und Kategorien, sodass diese auch auf Kategorienseiten und Spezial:Linkliste erscheinen; außerdem die Werte bestimmter Vorlagen für veränderliche Daten sowie Bildgrößen.
    • Durch Klicken auf „Bearbeiten“ oder „Seite bearbeiten“ und – ohne vorher etwas zu ändern – „Änderungen speichern“ speichert man den Artikel genau wie vorgefunden; dadurch wird keine neue Version der Seite angelegt.
  2. Zuweilen wird der Begriff auch für eine Textänderung benutzt, bei der nichts sichtbar verändert wird; etwa das Einsetzen eines Leerzeichens am Ende eines Absatzes. Das Abspeichern einer Textversion ohne jegliche Änderung ist nicht möglich, damit die Software einen Unterschied zur vorigen Version erkennt. Das hat aber dieselbe Auswirkung wie der Purge-Befehl, ein Leeren des Server-Caches. Derartige unsichtbare Bearbeitungen sollte man unterlassen, da diese in der Versionsgeschichte und auf den Beobachtungslisten der anderen Benutzer erscheinen.

Spezialseite

Ende 2019 wurde die Möglichkeit eröffnet, auch über ein Wikilink robuster auf diese Funktion zu verlinken:

  • [[Spezial:Purge/<Seitenname>]]

Der Seitenname wäre nach dem Schrägstrich anzugeben. Wird dieser weggelassen, dann wird ein Formular eröffnet, in dem der Seitenname eingegeben werden kann.

Technische Hinweise

Einbindung per Vorlage

Auf Seiten mit eingebundenen Inhalten, die sich häufig ändern, kann die Vorlage {{Purge}} eingebunden werden. Damit wird ein Link erzeugt, der den Server-Cache leert.

Funktionsweise der Cache-Bereinigung (englisch purge)

Wenn eine Bearbeitung einer Wiki-Seite erfolgt, speichert die MediaWiki-Software die Änderung in der Datenbank. Wenn ein nicht-angemeldeter Benutzer die Seite aufruft, wird eine Kopie der Seite in den Servercache eines der sekundären Server geladen. Bis die Seite erneut geändert wird, wird allen nicht angemeldeten Benutzern diese Kopie aus dem Server-Cache des sekundären Servers angezeigt. Dadurch belasten Benutzer, die sich Seiten anzeigen lassen, sie aber nicht bearbeiten, die Datenbank des Servers nicht und sehen dennoch die aktuelle Version einer Seite.

Normalerweise wird eine Seite, die bearbeitet wurde, als „verändert“ (touched) markiert und die Software generiert eine neue Kopie der Seite für den Cache des Servers. Wird jedoch eine Bearbeitung an einer Unterseite oder einer Vorlage durchgeführt, aber nicht an dem aufgerufenen Artikel, der die veränderte Unterseite oder Vorlage einbindet, so wird der Artikel nicht als „verändert“ markiert und es wird keine neue Kopie für den Cache des Servers generiert. Daher wird jedem, der den Artikel aufruft, eine alte Version aus dem Cache des Servers angezeigt, der die alten Versionen der Unterseite oder Vorlage enthält.

Der Purge-Befehl zwingt den Server, seinen Cache zu reinigen, indem er die ihm genannte Seite aus seinem Cache löscht. Beim nächsten Seitenaufruf wird die Seite entsprechend von Grund auf neu aufgebaut („gerendert“). Dies umfasst auch die Einbindung der neuesten Versionen aller eingebundenen Unterseiten und Vorlagen. Anschließend wird eine neue Kopie der angefragten Seite für den Cache des Servers erstellt. Dies kann einige Minuten dauern.

Wirkung auf andere Seiten

Über das API-Modul purge gibt es noch weitere Möglichkeiten:

  • Mit dem zusätzlichen Parameter &forcelinkupdate= werden auch die Hilfstabellen, wie Linkliste oder Kategorieanzeige, aktualisiert; das entspricht dem Nulledit.
  • &forcerecursivelinkupdate= führt auch eine Aktualisierung der Hilfstabellen aller Seiten durch, die diese Seite einbinden (mithilfe der JobQueue). Dies belastet die Server stärker und sollte sparsam eingesetzt werden.

Weitere Informationen