Ottimizzare la banda di Apache
Introduzione
Nell'installazione Apache di default di Debian è presente l'utile modulo mod_deflate: attivando questo modulo sara’ possibile comprimere i dati trasferiti dal vostro sito al browser web del visitatore, velocizzando cosi’ l’apertura delle pagine web ed utilizzando minor banda di connessione.
E' possibile abilitare mod_deflate con questo comando:
# a2enmod deflate
Per ottimizzarne la configurazione, creiamo un file .conf apposito:
# nano /etc/apache2/conf.d/mod_deflate
avente come contenuto:
# Configurazione Mod Deflate ############################# <IfModule mod_deflate.c> # Definisco il livello di compresssione # Valori da 1 (min) a 9 (max) DeflateCompressionLevel 3 </IfModule> <Location /> # Definisco quali pagine vanno compresse AddOutputFilterByType DEFLATE text/plain AddOutputFilterByType DEFLATE text/xml AddOutputFilterByType DEFLATE text/html AddOutputFilterByType DEFLATE text/css AddOutputFilterByType DEFLATE image/svg+xml AddOutputFilterByType DEFLATE application/xhtml+xml AddOutputFilterByType DEFLATE application/xml AddOutputFilterByType DEFLATE application/rss+xml AddOutputFilterByType DEFLATE application/atom_xml AddOutputFilterByType DEFLATE application/x-javascript AddOutputFilterByType DEFLATE application/x-httpd-php AddOutputFilterByType DEFLATE application/x-httpd-fastphp AddOutputFilterByType DEFLATE application/x-httpd-eruby # Attivo la compressione SetOutputFilter DEFLATE # Non comprimo il file che hanno una loro compressione # di default SetEnvIfNoCase Request_URI \.(?: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 SetEnvIfNoCase Request_URI \.avi$ no-gzip dont-vary SetEnvIfNoCase Request_URI \.mov$ no-gzip dont-vary SetEnvIfNoCase Request_URI \.mp3$ no-gzip dont-vary SetEnvIfNoCase Request_URI \.mp4$ no-gzip dont-vary SetEnvIfNoCase Request_URI \.rm$ no-gzip dont-vary # Impedisco errori di compressione nelle vecchie # versioni dei browser BrowserMatch ^Mozilla/4 gzip-only-text/html BrowserMatch ^Mozilla/4\.0[678] no-gzip BrowserMatch \bMSIE !no-gzip !gzip-only-text/html BrowserMatch \bMSI[E] !no-gzip !gzip-only-text/html # Make sure proxies don't deliver the wrong content Header append Vary User-Agent env=!dont-vary # Attivo i log per controllare il corretto # funzionamento del modulo DeflateFilterNote Input input_info DeflateFilterNote Output output_info DeflateFilterNote Ratio ratio_info LogFormat '"%r" %{output_info}n/%{input_info}n (%{ratio_info}n%%)' deflate CustomLog /var/log/apache2/deflate_log deflate </Location>