Sayfanın geri-ileri önbellekten geri yüklenebildiğinden emin olun

Arka plan

Geri-ileri önbellek (bfcache), sayfa gezinme geçmişinden geri yüklendiğinde sayfanın anlık görüntüsünü bellekte depolar. Bu, sayfaya geri dönme işlemlerini önemli ölçüde hızlandırır. Bununla birlikte, bazı tarayıcı API'leri (örneğin, kaldırma işleyicileri) bfcache'nin başarısız olmasına ve sayfanın normal bir şekilde yüklenmesine neden olabilir.

Lighthouse, bfcache hatalarını nasıl tespit eder?

Bağımsız Gezinmeler

Bağımsız bir gezinmenin sonunda Lighthouse, sayfayı gezinme geçmişinden geri yüklemeyi deneyerek bfcache'in kullanılıp kullanılmadığını algılar.

Kullanıcı İşlemleri İşlemleri

Lighthouse, kullanıcı akışı çalıştırırken gezinmedeki bfcache'i etkin bir şekilde test etmez. Bunun nedeni, her gezinme işleminin sonunda sayfadan çıkıp sayfaya geri dönmenin, sayfadaki kullanıcı deneyimlerinin çoğunu yansıtmamasıdır.

Bununla birlikte, kullanıcı yolculuğuna geçmiş gezinme ekleyerek bfcache kullanımını zaman aralığı modunda test edebilirsiniz. Örneğin:

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 hatalarını anlama

Sayfa herhangi bir nedenle bfcache'den geri yüklenemezse denetim başarısız olur. Lighthouse, bfcache'nin kullanılamamasının nedenlerini ve soruna neden olan kareleri listeler. Başarısızlık nedenleri üç türden biri olabilir:

  • Yapılabilir: Önbelleğe almayı etkinleştirmek için bu sorunları düzeltebilirsiniz.
  • Destek Bekleniyor: Chrome bu özellikleri henüz desteklemediğinden önbelleğe almayı engeller. Ancak Chrome, desteklenmeye başladıktan sonra bu sınırlamaları kaldırır.
  • İşlem yapılamaz: Bu sayfadaki sorunları düzeltemezsiniz. Sayfanın kontrolü dışında bir şey önbelleğe almayı engelliyor.

Lighthouse geri/ileri önbelleği denetiminden örnek sonuç

Kaynaklar