Włącz kompresję tekstu

Zasoby tekstowe powinny być kompresowane, aby zminimalizować ilość danych przesyłanych w sieci. Sekcja Możliwości w raporcie Lighthouse zawiera listę wszystkich zasobów tekstowych, które nie są skompresowane:

Zrzut ekranu przedstawiający audyt Lighthouse Włącz kompresję tekstu

Jak Lighthouse obsługuje kompresję tekstu

Lighthouse zbiera wszystkie odpowiedzi, które:

  • zawierać typy zasobów oparte na tekście;
  • Nie podawaj nagłówka content-encoding ustawionego na br, gzip lub deflate.

Następnie Lighthouse kompresuje każdy z nich za pomocą GZIP, aby obliczyć potencjalne oszczędności.

Jeśli pierwotny rozmiar odpowiedzi jest mniejszy niż 1, 4 KiB lub potencjalne oszczędności wynikające z kompresji są mniejsze niż 10% pierwotnego rozmiaru, Lighthouse nie oznacza tej odpowiedzi w wynikach.

Włącz kompresję tekstu na serwerze

Aby przejść ten audyt, włącz kompresję tekstu na serwerach, które obsługiwały te odpowiedzi.

Gdy przeglądarka wysyła żądanie zasobu, używa nagłówka żądania HTTP Accept-Encoding, aby wskazać, jakie algorytmy kompresji obsługuje.

Accept-Encoding: gzip, compress, br

Jeśli przeglądarka obsługuje Brotli (br), używaj tego algorytmu, ponieważ może on bardziej zmniejszyć rozmiar plików zasobów niż inne algorytmy kompresji. Wyszukaj how to enable Brotli compression in <X>, gdzie <X> to nazwa serwera. Od grudnia 2022 r. Brotli jest obsługiwany we wszystkich głównych przeglądarkach z wyjątkiem Safari na iOS. Aktualne informacje znajdziesz w sekcji Zgodność z przeglądarką.

Używaj GZIP jako alternatywy dla Brotli. GZIP jest obsługiwany we wszystkich najważniejszych przeglądarkach, ale jest mniej wydajny niż Brotli. Przykłady znajdziesz w sekcji Konfiguracje serwera.

Serwer powinien zwracać nagłówek odpowiedzi HTTP Content-Encoding, aby wskazać, jakiego algorytmu kompresji użył.

Content-Encoding: br

Sprawdzanie kompresji odpowiedzi

Aby sprawdzić, czy serwer skompresował odpowiedź:

Aby otworzyć Narzędzia dla programistów, naciśnij Control+Shift+J (lub Command+Option+J na Macu). Kliknij kartę Sieć.

  1. Aby otworzyć Narzędzia deweloperskie, naciśnij Control+Shift+J (lub Command+Option+J na Macu).
  2. Kliknij kartę Sieć.
  3. Kliknij żądanie, które spowodowało wyświetlenie interesującej Cię odpowiedzi.
  4. Kliknij kartę Nagłówki.
  5. Sprawdź nagłówek content-encoding w sekcji Nagłówki odpowiedzi.
Nagłówek odpowiedzi content-encoding
Nagłówek odpowiedzi content-encoding.

Aby porównać skompresowany i rozkompresowany rozmiar odpowiedzi:

  1. Aby otworzyć Narzędzia deweloperskie, naciśnij Control+Shift+J (lub Command+Option+J na Macu).
  2. Kliknij kartę Sieć.
  3. Włącz duże wiersze żądań. Zobacz Używaj dużych wierszy żądań.
  4. W kolumnie Rozmiar znajdź odpowiedź, która Cię interesuje. Górna wartość to rozmiar po kompresji. Dolna wartość to rozmiar po rozpakowaniu.

Zobacz też Minimalizowanie i kompresowanie ładunków sieciowych.

Wskazówki dotyczące konkretnych stosów

  • Drupal zasoby tekstowe powinny być kompresowane (gzip, deflate lub brotli), aby zminimalizować ilość danych przesyłanych w sieci. Sugerujemy użycie sieci CDN, która obsługuje tę funkcję na poziomie natywnym, lub skonfiguruj wykonywanie tej operacji przez serwer WWW. Więcej informacji
  • Joomla: włącz ustawienie Gzip Page Compression (System > Global configuration > Server).
  • WordPress włącz kompresję tekstu w konfiguracji serwera WWW.

Zasoby