Es kann kein einfacher html5-Manifest-Cache verwendet werden!

9

Ich versuche, einen einfachen html5 Webcache zum Laufen zu bringen.

Dies ist meine einzige HTML-Seite, index.html:

%Vor%

Dies ist meine einzige Cache-Datei, main.manifest:

%Vor%

Ich benutze Apache shared hosting, ich lege eine .htaccess-Datei in mein Webverzeichnis, wo diese beiden anderen Dateien sind, weil ich dachte, dass ich vielleicht den MIME-Typ definieren muss:

%Vor%

Am Ende habe ich nur diese drei Dateien in diesem Verzeichnis:

%Vor%

Wenn ich die Seite auf Chrome von meinem Mac, Safari von meinem iPhone oder Chrome von meinem Android 2.3-Gerät besuche, passiert nichts, die Seite wird einfach wie gewohnt geladen. Wenn ich den Flugmodus aktiviere (alle Verbindungen löschend), kann die Seite nicht geladen werden (daher denke ich, dass das Zwischenspeichern fehlgeschlagen ist).

Was fehlt mir hier?

Danke

------------ Aktualisierung ------------------

Ich glaube, der Mime-Typ wurde nicht richtig erkannt. Ich aktualisierte .htaccess zu:

%Vor%

Wenn ich nun in Google Chrome mit Konsole läuft, sehe ich:

%Vor%

Firefox fordert mich auf, wenn ich die Seite über die Webseite lade, damit ich sie auf der Festplatte speichern kann, das ist gut. Sieht so aus, als ob es auch auf Android 2.3.4 funktioniert. Der Browser sagt immer noch "Diese Seite kann nicht geladen werden, weil Sie nicht mit dem Internet verbunden sind", aber dann lädt es trotzdem.

Danke!

    
user291701 02.05.2011, 22:59
quelle

2 Antworten

5

Zuerst hatten Sie das erste Mal auf Ihrer Mime-Typ-Erklärung. Es sollte so sein:

%Vor%

Lesen Sie als Nächstes diesen Absatz von In HTML5 tauchen :

  

F: Muss ich meine HTML-Seiten in meinem Cache-Manifest auflisten?

     

A: Ja und nein. Wenn Ihre gesamte Webanwendung in einem einzigen enthalten ist   Vergewissern Sie sich, dass die Seite auf das Cache - Manifest verweist   Manifestattribut Wenn Sie zu einer HTML-Seite mit einem Manifest navigieren   Attribut wird die Seite selbst als Teil des Webs angenommen   Anwendung, sodass Sie sie nicht in der Manifestdatei selbst aufführen müssen.   Wenn Ihre Webanwendung jedoch mehrere Seiten umfasst, sollten Sie sie auflisten   alle HTML-Seiten in der Manifest-Datei, andernfalls der Browser   Ich wüsste nicht, dass es andere HTML-Seiten geben muss   heruntergeladen und zwischengespeichert.

In diesem Fall benötigen Sie kein Cache-Manifest . Der Browser wird Ihre Seite automatisch zwischenspeichern (solange es die einzige Ressource ist, wie zum Beispiel eine CSS-Datei oder eine Javascript-Datei).

Weitere Informationen erhalten Sie unter dem obigen Link.

    
alexanderpine 12.07.2011 00:03
quelle
0

Ich habe einige Probleme mit "explizit zwischengespeicherten" Elementen in meinen Manifesten gehabt, deshalb habe ich es normalerweise so eingerichtet:

%Vor%

Aber die andere Antwort ist richtig, der Browser wird automatisch URLs zwischenspeichern, die ein Manifest für den Anwendungscache enthalten.

Ich empfehle, die JavaScript-Konsole von Chrome zu verwenden - sie gibt Ereignisse im Anwendungscache aus, wenn sie ausgeführt werden, einschließlich Fehlern.

    
Sam King 21.08.2012 16:50
quelle

Tags und Links