Jak zapnout GZIP kompresi na linuxovém serveru?

Co je to gzip komprese?

Gzip komprese je technologie, používaná na webserveru k minimalizaci velikosti datových souborů, které se přenášejí mezi serverem a klientem (např. webovým prohlížečem). Když klient (webový prohlížeč) požádá server o určitou webovou stránku, server odešle odpověď ve formě datového souboru. Tyto soubory mohou být poměrně velké, což může způsobit pomalé načítání stránek.

Gzip komprese řeší tento problém tím, že zmenšuje velikost datového souboru před samotným odesláním dat webovému prohlížeči. Server nejprve zmenší soubor pomocí algoritmu gzip a poté jej odešle klientovi, který soubor dekomprimuje zpět do původní podoby. Výsledkem je menší soubor, který se rychleji stáhne a ušetří se tak čas i datový provoz.

Většina dnešních moderních webových serverů i prohlížečů gzip kompresi plně podporuje.

Jak zapnu gzip kompresi u webhostingu Forpsi na operačním systému Linux?

Gzip komprese se zapíná pomocí direktiv, které se přidávají do souboru .htaccess. Tento soubor se poté vloží do složky www, nebo složky subdomény (subdoms/jméno_subdomény).

Soubor .htaccess je konfigurační soubor webového serveru Apache. Tento soubor umožňuje správci webu upravit chování serveru pro určité adresáře, nebo stránky. Soubor .htaccess se používá pro nastavení různých funkcí, jako jsou například přesměrování URL, autentizace uživatelů, omezení přístupu k určitým stránkám nebo ochrana proti útokům.

Soubor .htaccess se vytvoří následovně.

  1. na svém počítači si vytvořte prázdný textový dokument a pojmenujte jej htaccess.txt
  2. soubor editujte textovým editorem a vložte do něj direktivu viz níže
  3. tento soubor nahrajte do složky www, nebo do složky subdomény (návod pro připojení se k FTP je zde - Total Commander)
  4. nahraný soubor na FTP přejmenujte na .htaccess
Pokud již na FTP soubor .htaccess máte, nepřepisujte jej, ani nevytvářejte nový. Níže uvedené direktivy pouze vložte do stávajícího .htaccess souboru. V opačném případě by došlo k přepisu Vašeho stávajícího souboru .htaccess a web by mohl být nefunkční.

Jak vypadají direktivy pro gzip kompresi?

Do souboru .htaccess vložte následující direktivy, které gzip kompresi aktivují.

<IfModule mod_deflate.c>
  AddOutputFilterByType DEFLATE application/javascript
  AddOutputFilterByType DEFLATE application/json
  AddOutputFilterByType DEFLATE application/vnd.ms-fontobject
  AddOutputFilterByType DEFLATE application/xhtml+xml
  AddOutputFilterByType DEFLATE application/xml
  AddOutputFilterByType DEFLATE application/font-sfnt
  AddOutputFilterByType DEFLATE font/otf
  AddOutputFilterByType DEFLATE font/ttf
  AddOutputFilterByType DEFLATE image/svg+xml
  AddOutputFilterByType DEFLATE image/vnd.microsoft.icon
  AddOutputFilterByType DEFLATE text/plain
  AddOutputFilterByType DEFLATE text/css
  AddOutputFilterByType DEFLATE text/xml
  AddOutputFilterByType DEFLATE text/html
</IfModule>

Gzip komprese by měla být po uložení změn v souboru .htaccess ihned aktivní, což by se mělo projevit i na rychlosti načítání webhostingové aplikace.