Hintergrund
Im Back-Forward-Cache (bfcache) wird ein Snapshot der Seite für die Wiederherstellung der Seite aus dem Navigationsverlauf gespeichert. Dadurch wird das Zurücknavigieren zur Seite erheblich beschleunigt. Einige Browser-APIs (z. B. Unload-Listener) können jedoch dazu führen, dass der bfcache fehlschlägt und die Seite normal geladen wird.
So erkennt Lighthouse bfcache-Fehler
Eigenständige Navigation
Am Ende einer eigenständigen Navigation navigiert Lighthouse zu einer anderen Seite und versucht, die Seite aus dem Navigationsverlauf wiederherzustellen, um festzustellen, ob der bfcache verwendet wird.
Abläufe für Nutzer
Lighthouse testet den bfcache während der Navigation nicht aktiv, wenn ein User Flow ausgeführt wird. Das liegt daran, dass das Navigieren zur Seite am Ende jeder Navigation nicht die meisten Nutzererfahrungen auf der Seite widerspiegelt.
Sie können jedoch die bfcache-Nutzung im Zeitspannenmodus testen, indem Sie eine Verlaufsnavigation als Teil der User Journey integrieren. Beispiel:
const flow = await startFlow(page);
// This navigation will not test the bfcache
// because it is part of a user flow.
await flow.navigate('https://example.com');
// This timespan will try to restore the page from the bfcache.
// Problems restoring from the bfcache are surfaced in this report.
await flow.startTimespan();
await page.goto('https://example2.com');
await page.goBack();
await flow.endTimespan();
bfcache-Fehler verstehen
Wenn die Seite aus irgendeinem Grund nicht aus dem bfcache wiederhergestellt werden konnte, schlägt die Prüfung fehl. Lighthouse listet alle Gründe auf, aus denen der bfcache nicht verwendet werden konnte, sowie die Frames, die das Problem verursacht haben. Es gibt drei mögliche Gründe für das Fehlschlagen:
- Umsetzbar: Sie können diese Probleme beheben, um das Caching zu aktivieren.
- Ausstehende Unterstützung: Chrome unterstützt diese Funktionen noch nicht und verhindert daher die Speicherung im Cache. Sobald diese Funktion unterstützt wird, hebt Chrome diese Einschränkungen jedoch auf.
- Nicht umsetzbar: Sie können diese Probleme auf dieser Seite nicht beheben. Etwas, das sich außerhalb der Steuerung der Seite befindet, verhindert das Caching.