Włączanie kompresji GZIP w Apache na Ubuntu & Debian
- 4043
- 448
- Pan Jeremiasz Więcek
Kompresja GZIP to potężne narzędzie, które może znacznie poprawić wydajność witryny, zmniejszając rozmiar plików przesyłanych między serwerem WWW a klientem. W tym artykule zbadamy, czym jest kompresja GZIP, dlaczego ma to znaczenie i jak włączyć go na Apache działającego na Ubuntu.
Co to jest kompresja GZIP?
Kompresja GZIP to metoda kompresji plików przed wysłaniem ich przez sieć. Działa poprzez analizę zawartości pliku i znalezienie wzorów, które można zastąpić krótszymi symbolami, zmniejszając ogólny rozmiar pliku. Gdy klient odbiera skompresowany plik, dekompresuje go i wyświetla oryginalną treść.
Dlaczego kompresja GZIP ma znaczenie?
Zmniejszenie wielkości plików przesyłanych przez sieć może znacznie poprawić wydajność witryny. Mniejsze pliki oznaczają szybsze czasy transferu, co może skutkować szybszym czasem ładowania strony i lepszym wrażenia użytkownika. Ponadto kompresja GZIP może zmniejszyć wykorzystanie przepustowości i niższe koszty hostingu, szczególnie w przypadku stron internetowych o dużym ruchu.
Włączanie kompresji GZIP na Apache
Włączenie kompresji GZIP na Apache jest prostym procesem. Oto kroki, które należy śledzić:
- Sprawdź, czy GZIP jest już włączony: Przed włączeniem GZIP sprawdź, czy jest już włączony na serwerze Apache, uruchamiając następujące polecenie:
sudo apache2ctl -t -d zrzut_module | grep spuszcza się
Jeśli GZIP jest już włączony, zobaczysz następujące dane wyjściowe:
Wyjście deflate_module (udostępniony)
Jeśli nie widzisz tego wyjścia, musisz włączyć moduł deflate, który jest odpowiedzialny za obsługę kompresji GZIP.
- Włącz moduł deflate: Aby włączyć moduł deflate, uruchom następujące polecenie:
sudo a2enmod deflate
To polecenie utworzy symboliczny link do pliku konfiguracyjnego deflate w katalogu/etc/apache2/mods-enabled/.
- Skonfiguruj kompresję GZIP: Po włączeniu modułu deflate musisz skonfigurować kompresję GZIP w pliku konfiguracyjnym Apache. Otwórz plik konfiguracyjny za pomocą preferowanego edytora tekstu.
sudo nano/etc/apache2/apache2.conf
Aby włączyć go dla określonej strony internetowej, edytuj wirtualny plik konfiguracyjny hosta specyficznego dla witryny lub utwórz .plik htaccess w ramach dokumentu. Następnie dodaj/dołącz następujący fragment do pliku.
# Compress HTML, CSS, JavaScript, Text, XML i FONTS addoutputFilterByPe deflate Application/JavaScript addoutputFilterByType deflate Application/RSS+XML addoutputFilterBytype deflate Applate/vnd.ms-fontObject addoutputFilterByType deflate Application/x-font addoutputFilterByType deflate Application/x-Font-Opentype addoutputFilterByType deflate Application/x-Font-Otf addoutputFilterByType deflate Application/x-font-TrueType AddOutputFilterByType deflate/x-fontertyPyPe addoutf/ x-javascript addoutputFilterBytype deflate Application/xhtml+xml addoutputFilterByType deflate Application/xml addoutputFilterByType deflate Font/OpenTypikona addoutputFilterByType deflate text/css addoutputFilterByType deflate text/html addoutputPutYType deflate Text/JavaScript addoutputFilterByType Drustplate Text/Plain AddOutOputOpteSeFeSyTyPeType Text/xml Poziomy Compression (SightEstSpression).(?: gif | jpe?g | png) $ no-gzip dont-vary setenvifnocase request_uri \.(?: exe | t?GZ | zip | bz2 | sit | rar) $ no-gzip dont-vary setenvifnocase request_uri \.pdf $ no-gzip dont-vary # upewnij się, że proxy nie dostarczają niewłaściwego nagłówka treści dołączają różni się agent użytkownika env =!Don't-Vary1234567891011121314151617181920212223242526272829303132333435 # Compress HTML, CSS, JavaScript, Text, XML i FONTS addoutputFilterByPe deflate Application/JavaScript addoutputFilterByType deflate Application/RSS+XML addoutputFilterBytype deflate Applate/vnd.ms-fontObject addoutputFilterByType deflate Application/x-font addoutputFilterByType deflate Application/x-Font-Opentype addoutputFilterByType deflate Application/x-Font-Otf addoutputFilterByType deflate Application/x-font-TrueType AddOutputFilterByType deflate/x-fontertyPyPe addoutf/ x-javascript addoutputFilterBytype deflate Application/xhtml+xml addoutputFilterByType deflate Application/xml addoutputFilterByType deflate Font/OpenTypikona addoutputFilterByType deflate text/css addoutputFilterByType deflate text/html addoutputPutYType deflate Text/JavaScript addoutputFilterByType Drustplate Text/Plain AddOutOputOpteSeFeSyTyPeType Text/xml Poziomy Compression (SightEstSpression).(?: gif | jpe?g | png) $ no-gzip dont-vary setenvifnocase request_uri \.(?: exe | t?GZ | zip | bz2 | sit | rar) $ no-gzip dont-vary setenvifnocase request_uri \.pdf $ no-gzip dont-vary # upewnij się, że proxy nie dostarczają niewłaściwego nagłówka treści dołączają różni się agent użytkownika env =!Don't-Vary Powyższy plik konfiguracyjny zawiera listę typów plików, które powinny być ściśnięte i poziom kompresji (9 jest najwyższym poziomem kompresji). Określa również typy plików, których nie należy kompresować, takie jak obrazy i archiwa, ponieważ kompresowanie tego typu plików może faktycznie zwiększyć ich rozmiar.
- Uruchom ponownie Apache: Po skonfigurowaniu kompresji GZIP musisz ponownie uruchomić Apache, aby zastosować zmiany:
sudo systemctl restart apache2
Sprawdź kompresję GZIP
Teraz, gdy witryna była włączona z kompresją GZIP, użyj jednego z poniższych narzędzi online, aby sprawdzić, czy GZIP działa poprawnie.
- http: // www.Whatsmyip.test org/http-compression/
Wniosek
Włączanie kompresji GZIP na Apache działające na Ubuntu to skuteczny sposób na poprawę wydajności strony internetowej i zmniejszenie wykorzystania przepustowości. Postępując zgodnie z krokami opisanymi w tym artykule, możesz łatwo włączyć kompresję GZIP i cieszyć się korzyściami z szybszego ładowania witryny i lepszego doświadczenia użytkownika.
- « Jak zainstalować Munin (narzędzie do monitorowania sieci) w Centos, Red Hat i Fedora
- Utwórz CSR dla WildCard SSL na systemie Windows Server 2008 »