Login

corsi online di WordPress

Browser caching in WordPress con htaccess

Una soluzione per accelerare i tempi di caricamento delle pagine di un sito WordPress è l'utilizzo del cosiddetto caching.

Quando un nuovo visitatore accede al sito, il browser deve scaricare tutti i file (script, css, immagini, ecc). Più alto è il numero di elementi che compongono la pagina, maggiore è il numero di richieste HTTP: la conseguenza è un rallentamento nel caricamento complessivo della pagina.

Se il visitatore torna sul sito una seconda volta possiamo però indicare al browser del visitatore di immagazzinare i file della pagina nelle sue cache; in questo modo, quando il visitatore torna sul sito, il browser ricaricherà quei file dalle proprie cache anziché scaricarli nuovamente: viene così ridotto il numero di richieste HTTP che il browser deve eseguire, accelerando il caricamento della pagina.

Ma come possiamo attivare il caching del browser (detto browser caching)?
Occorre inserire nel file .htaccess del sito alcune direttive che indicano al browser per quanto tempo mantenere nelle proprie cache i file del sito.
Se il file .htaccess non è presente, basta creare con un editor di testi un file vuoto nel formato .txt; una volta caricato sul server il file htaccess.txt deve essere rinominato in .htaccess.

NB: Per utilizzare il browser caching tramite .htaccess occorre utilizzare un server Apache e avere attivi due moduli: mod_headers e mod_expires.

Con il modulo mod_headers attivo:

<IfModule mod_headers.c>
<FilesMatch "\\.(ico|gz)$">
Header set Cache-Control "max-age=2592000, public"
</FilesMatch>
<FilesMatch "\\.(jpe?g|png|gif|swf|flv|pdf)$">
Header set Cache-Control "max-age=604800, public"
</FilesMatch>
<FilesMatch "\\.(js|css)$">
Header set Cache-Control "max-age=3600, private"
</FilesMatch>
<filesMatch "\\.(html|htm)$">
Header set Cache-Control "max-age=300, public"
</filesMatch>
</IfModule>

Queste sono invece le direttive per il browser caching nel caso di mod_expires attivo.

# CACHE EXPIRATION #
ExpiresActive On
ExpiresDefault A300
ExpiresByType image/x-icon A2592000
ExpiresByType application/x-javascript A3600
ExpiresByType text/css A3600
ExpiresByType image/gif A604800
ExpiresByType image/png A604800
ExpiresByType image/jpeg A604800
ExpiresByType text/plain A300
ExpiresByType application/x-shockwave-flash A604800
ExpiresByType video/x-flv A604800
ExpiresByType application/pdf A604800
ExpiresByType text/html A300
# CACHE EXPIRATION #

Nell'elenco sottostante sono indicate le tempistiche in secondi che possiamo inserire nelle direttive mod_headers e mod_expires (inserire nel codice solo il numero in secondi, non il corrispondente in minuti, ore, giorni e mesi).

# 300 5 MIN
# 600 10 MIN
# 900 15 MIN
# 1800 30 MIN
# 2700 45 MIN
# 3600 1 HR
# 7200 2 HR
# 10800 3 HR
# 14400 4 HR
# 18000 5 HR
# 36000 10 HR
# 39600 11 HR
# 43200 12 HR
# 46800 13 HR
# 50400 14 HR
# 54000 15 HR
# 86400 1 DAY
# 172800 2 DAY
# 259200 3 DAY
# 345600 4 DAY
# 432000 5 DAY
# 518400 6 DAY
# 604800 1 WEEK
# 1209600 2 WEEK
# 1814400 3 WEEK
# 2419200 4 WEEK
# 4838400 2 MONTH
# 7257600 3 MONTH
# 9676800 4 MONTH
# 12096000 5 MONTH
# 14515200 6 MONTH
# 16934400 7 MONTH
# 19353600 8 MONTH
# 21772800 9 MONTH
# 24192000 10 MONTH
# 26611200 11 MONTH
# 29030400 12 MONTH

 

Canali social WPCORSI

facebook wpcorsitwitter wpcorsicanale YouTube wordpress

 

Login or Registrati