W tym wpisie przebrniemy przez instalację modułu PageSpeed na serwerze Apache. W wielu artykułach pisałem o dobrodziejstwach wykorzystywania tego modułu. Automatyzuje on działania optymalizacyjne, które powodują szybsze wczytywanie się stron i aplikacji internetowych.
O jakich działaniach mowa?
- automatyzuje minifikację plików CSS i JS po stronie serwera,
- łączy kilka zasobów w jeden plik, o czym pisałem w artykule optymalizacja i scalanie plików CSS i JS,
- ustawia nagłówki Expires i nadaje im odległe w czasie czasy inwalidacji, czytaj więcej we wpisie pamięć podręczna expires/cache-control,
- minifikuje HTML,
- dzięki użyciu techniki o nazwie odcisk palca adresu URL (ang. URL fingerprint) automatycznie inwaliduje utworzone w wyniku optymalziacji pliki co umożliwia dokonywać zmian na stronie jak dotychczas.
Zalety modułu PageSpeed
- oszczędność czasu (automatyzacja prac związana z optymalizacją plików),
- lepsze wrażenia użytkowników w wyniku szybszego działania strony,
- polepszenie pozycji w wyszukiwarce (szczególnie po okresie lipiec 2018) gdzie wpływ szybkości na ranking został potwierdzony przez Google,
- moduł jest dostępny dla dwóch najpopularniejszych na całym świecie serwerów: Apache oraz nginx
Wady modułu PageSpeed
- nie można go zainstalować na wszystkich serwerach,
- obciąża procesor serwera (optymalizacja i aktualizacja plików dzieje się w locie),
- kolejny black-box, który robi coś w aplikacji nad czym nie mamy stu procentowej kontroli.
Instalacja modułu PageSpeed
Instalacja modułu jest możliwa tylko na popularnych serwerach Apache oraz nginx.
Na nic szukać wersji dla innych, mniej popularnych serwerów (takich jak przykładowo LiteSpeed – „speed” cóż za ironia). Tam mod_pagespeed co prawda jest technicznie możliwy do zainstalowania ale twórcy odmawiają wsparcia w przypadku problemów o czym fajnie napisał Marek w swoim komentarzu.
Instalacja modułu PageSpeed dla serwera Apache w środowisku Debian nie powinna przysporzyć najmniejszego kłopotu. Na początek pobieramy paczkę z oficjalnej strony Google:
wget https://dl-ssl.google.com/dl/linux/direct/mod-pagespeed-stable_current_amd64.deb
instalacja:
dpkg -i mod-pagespeed-stable_current_amd64.deb
Restart serwera:
/etc/init.d/apache2 restart
Domyślna konfiguracja minimalizuje i scala pliki JS i CSS.
Testowanie modułu PageSpeed
Moduł PageSpeed przetestowałem na sklepie PrestaShop 1.7. Wyniki zostały poprawione praktycznie „za darmo”. W niektórych przypadkach można osiągnąć prawie 100 punktów w PageSpeed Insights.
Jeżeli dokonaliśmy optymalizacji związanej z nagłówkami Expires to samo scalenie i minimalizacja zasobów poprawia wynik mobilny o kilka lub kilkanaście punktów podobna sytuacja jest w zakładce Desktop. Warto taki moduł włączyć w przypadku kiedy dysponujemy serwerem VPS a wszystkie inne techniki związane z przyspieszaniem stron internetowych już wykorzystaliśmy.
Wyniki przed i po jakie uzyskano w systemie WordPress + WooCommerce (motyw Twenty-Twenty):

Wyniki przed i po jakie uzyskano w systemie PrestaShop 1.7 (motyw default):

PageSpeed Admin
Za pomocą panelu administratora, możemy śledzić statystyki działania modułu i monitorować jego funkcjonowanie:

Podsumowanie
Moduł PageSpeed znajdzie zastosowanie w aplikacjach webowych i w tych CMSach, dla których nie ma dedykowanych wtyczek do minimalizowania i optymalizowania plików CSS, JS jak i samego HTMLa. Poprawa wyniku o kilka czy kilkanaście punktów będzie już odczuwalna w użytkowaniu strony i powinna być korzystna w dłuższej perspektywie czasu dla jej właściciela.
Odpowiedz lub skomentuj