HTML and CSS Reference
In-Depth Information
nannten Cache-Manifestdatei angegeben. Die eigentliche Webseite, die diese Datei
referenziert, ist implizit immer dabei, d. h. sie muss nicht explizit im Manifest
angegeben werden. Folgendes Beispiel zeigt ein einfaches Cache-Manifest:
CACHE MANIFEST
/js/functions.js
/css/style.css
/images/logo.jpg
Diese Manifestdatei muss nun auf einem Server verfügbar gemacht werden, üblicher-
weise im selben Verzeichnis wie auch die HTML5-Seite. Innerhalb des HTML-Tags
dieser Webseite muss nun die Manifestdatei referenziert werden:
<html manifest "demo.manifest">
Wichtig ist hierbei, dass das Manifest demo.manifest mit dem Content-Type
text/cache-manifest vom Server ausgeliefert wird. Das kann entweder dadurch
erreicht werden, dass die eigentliche Manifestdatei dynamisch, etwa von einem Skript
auf dem Server, erstellt wird oder ein Eintrag in die .htaccess -Datei des aktuellen
Verzeichnisses des (Apache-)Webservers gemacht wird. Dieser Eintrag in die (eventuell
noch zu erstellende) .htaccess -Datei sieht so aus:
AddType text/cache manifest .manifest
Hiermit wird der Server angewiesen, alle Dateien mit der Endung .manifest mit dem
Content-Type text/cache-manifest auszuliefern. Sobald die vom Browser geladene
HTML-Seite über das manifest -Attribut eine Referenz auf eine Manifestdatei herstellt
und diese Datei mit dem Content-Type text/cache-manifest ausgeliefert wird,
versucht der Browser, die im Manifest aufgeführten Dateien für das nächste Aufrufen
der Webseite zu speichern. Wenn diese Speicherung abgeschlossen ist und der Nutzer
die Seite erneut lädt, wird die vorab gespeicherte Version verwendet.
Im Hintergrund wird zusätzlich bei jedem Aufruf der Seite versucht, das Manifest auf
Änderungen zu überprüfen. Das geschieht durch einen byteweisen Vergleich der Mani-
festdatei. Nicht das Modifikationsdatum der Datei ist also ausschlaggebend, sondern der
Inhalt. Um die oben aufgeführte Manifestdatei zu verändern, könnte beispielsweise ein
Kommentar hinzugefügt werden:
CACHE MANIFEST
#hier ein Kommentar
/js/functions.js
/css/style.css
/images/logo.jpg
Sobald nicht alle Dateien heruntergeladen werden konnten, wird automatisch der gesamte
Vorgang abgebrochen, und ein eventuell vorhandener älterer Cache bleibt der aktuelle
Cache. Der Download kann also entweder komplett abgeschlossen werden, oder sämtliche
Dateien werden verworfen. Wenn der Download der Dateien erfolgreich war, wird der
vorhandene Cache ausgetauscht und beim nächsten Laden der Webseite automatisch
verwendet. An dieser Stelle sollte aber betont werden, dass mit dem Abschluss des Down-
Search WWH ::




Custom Search