Komprese přes gzip je rozšířená, ale na druhou stranu opomíjená. Většina majitelů stránek maximálně zabalí (vysvětlíme si později) HTML a to je tak vše. Ovšem využití této techniky je mnohem větší. Můžeme zabalit třeba CSS styly, JS a dokonce i fonty (.ttf). To vše si teď ukážeme. Co je to ta gzip komprese?
Pomocí komprese dat přes gzip (neboli GNU zip) můžeme snížit velikost souborů o 50 až 80 %.
Je to způsob jak snížit přenosovou velikost textových souborů, které si prohlížeč stahuje, aby zobrazil stránku. Povídá se, že gzip je náročnější na server, protože soubory před odesíláním komprimuje. Toho se ovšem nebojte, to se povídalo před mnoha a mnoha lety a náročnost na server není nijak extrémní.
Fungování gzip komprese si můžete představit jako zabalování textových souborů. Server před odesláním soubor zabalí, pošle do prohlížeče a ten si ho rozbalí a přečte. Pro příklad knihovna jQuery 1.6.4 má 91kB. Pokud ovšem použijeme gzip, přenášet se bude zabalený a v takovém případě má jen 32kB. Něco takového značně pomůže udělat web rychlejší.
Požadavky na aktivaci komprese souborů
Budeme se bavit o zapnutí přes .htaccess (pohodlné a přehledné). V tomto případě můžeme aktivaci komprese JS a CSS souborů pomocí gzip učinit pokud server podporuje mod_deflate. Většina hostingů tento modul podporuje takže se není třeba strachovat či to více rozebírat. Jeho podporu si na svých stránkách můžete zkontrolovat přes soubor phpinfo. Stačí PHP soubor nahrát na server, otevřít v prohlížeči a najít si řádek Loaded Modules.
Jak zapnout gzip kompresi CSS a JS?
Aktivace gzip komprese se provede pomocí několika řádků do .htaccess souboru. V něm si určíme jaké druhy souborů chceme zabalit a celý kód obalíme pro jistotu do IfModule. To nám zaručí, že se kód nebude používat pokud na serveru není nainstalovaný požadovaný modul (v tomto případě mod_deflate). Užitečné pokud časem svůj web přesunete na jiný hosting, kde není modul podporován. Jednoduše předejdete problémům.
Související témata
Vloženo dne: 3. 12. 2011
Zařazeno v kategorii: Blogy a osobní weby

