Velocizzare il sito con mod_headers e mod_expire


Dopo aver parlato, nel precente articolo, di come velocizzare un sito internet utilizzando la compressione gzip abilitata nel webserver, oggi parleremo invece di un sistema di caching e scadenze, tramite mod_heasers e mod_expire.

L’utilizzo di questi due tools è semplicissimo, e viene totalmente gestito attraverso delle semplici informazioni via .htaccess, inserendo il seguente contenuto (personalizzabile a piacere):

# Turn on Expires and set default to 0
ExpiresActive On
ExpiresDefault A0

# Set up caching on media files for 1 year (forever?)
<FilesMatch "\.(flv|ico|pdf|avi|mov|ppt|doc|mp3|wmv|wav)$">
ExpiresDefault A29030400
Header append Cache-Control "public"
</FilesMatch>

# Set up caching on media files for 1 week
<FilesMatch "\.(gif|jpg|jpeg|png|swf)$">
ExpiresDefault A604800
Header append Cache-Control "public"
</FilesMatch>

# Set up 2 Hour caching on commonly updated files
<FilesMatch "\.(xml|txt|html|js|css)$">
ExpiresDefault A7200
Header append Cache-Control "proxy-revalidate"
</FilesMatch>

# Force no caching for dynamic files
<FilesMatch "\.(php|cgi|pl|htm)$">
ExpiresActive Off
Header set Cache-Control "private, no-cache, no-store, proxy-revalidate, no-transform"
Header set Pragma "no-cache"
</FilesMatch>

Cosi facendo il sito viene velocizzato, in quanto una volta che il cliente ha caricato le immagini, non andrà a ricaricarle nuovamente per il tempo configurato nella cache.

Questa piccola guida funziona, tuttavia, solo se il vostro server utilizza Apache ed ha moduli _headers ed _espire attivati, caso contrario si ottorrra’ un bell’internal server error (errore 500).

Ciao a tutti :)

Sei membro del forum? Vuoi scrivere anche tu su PROGRAMMI Blog gt
Chiedilo a @giorgiotave