Il file .htaccess
(hypertext access) è un file di configurazione che può essere interpretato dal web server Apache*. All’interno di questo file possono essere presenti delle regole che permettono di modificare il comportamento del web server.
Altri server web, come NGINX, LiteSpeed e Microsoft’s Internet Information Services (IIS), non utilizzano i file .htaccess
. Alcuni di questi server hanno metodi simili per la configurazione a livello di directory. Ad esempio, NGINX utilizza file di configurazione del server. Il web server LiteSpeed può interpretare i file .htaccess così come Apache.
Questo è un esempio di regola che è possibile inserire in un file .htaccess
per reindirizzare il traffico dalla versione HTTP alla versione HTTPS di un sito. Questa regola richiede che il modulo mod_rewrite
di Apache sia abilitato sul web server.
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
Alcune delle funzionalità che è possibile gestire e modificare attraverso un file .htaccess
sono:
- Controllo degli accessi a file e directory: In un file
.htaccess
è possibile inserire delle istruzioni per bloccare l’accesso a determinate pagine o sezioni di un sito. Puoi anche configurare l’accesso in base all’indirizzo IP del visitatore o utilizzare una password per proteggere specifiche sezioni del tuo sito. - Reindirizzamento degli URL: Puoi utilizzare un file
.htaccess
per creare delle regole di reindirizzamento permanenti (codice HTTP 301) o temporanee (codice HTTP 302), oppure utilizzare altri codici previsti dal protocollo HTTP. - Riscrittura degli URL: Il file
.htaccess
può essere utilizzato per riscrivere URL, il che può rendere le URL più leggibili per gli utenti e migliorare l’ottimizzazione dei motori di ricerca. Ad esempio, quando nella sezione Impostazioni -> Permalink dell’area di amministrazione del tuo sito WordPress modifichi qualcosa, le regole dei permalink vengono poi salvate nel file.htaccess
presente nella directory principale che ospita il tuo sito. - Personalizzazione dei messaggi di errore: Puoi utilizzare un file
.htaccess
per personalizzare le pagine di errore, come l’errore 404 – pagina non trovata. Questo ti permette di mantenere l’esperienza dell’utente coerente anche quando si verificano errori. - Miglioramento delle prestazioni: In questo file puoi anche inserire delle regole per per abilitare la compressione GZIP, per impostare le intestazioni di scadenza per migliorare la memorizzazione nella cache del browser oppure per altre impostazioni che possono avere un impatto sui tempi di caricamento delle pagine di un sito web.
La maggior parte dei plugin che si occupano di gestire la cache in sito WordPress vanno a scrivere le loro regole all’interno di questo file.
Come nel caso del file functions.php e del file wp-config.php, anche in questo caso va prestata la massima cautela in caso di modifiche. È sufficiente un piccolo errore nella configurazione di questo file per rendere inaccessibile il tuo sito.
*Ti segnalo inoltre che non tutti i server basati su Apache supportano l’uso di file .htaccess. Questo perché l’uso dei file .htaccess può essere abilitato o disabilitato nel file di configurazione principale di Apache, httpd.conf
.