Il file .htaccess WordPress è uno dei componenti più importanti dell’intero sito. Attraverso questo piccolo file di configurazione è possibile gestire redirect, sicurezza, URL, cache, compressione, protezione del sito e numerose altre funzionalità.
Una modifica errata al file .htaccess può però rendere WordPress completamente irraggiungibile, causando errori come:
- Errore 500 Internal Server Error;
- Errore 403 Forbidden;
- Redirect infiniti;
- Pagine non raggiungibili;
- Problemi di accesso a wp-admin.
In questa guida completa scoprirai cos’è il file .htaccess, dove si trova, come modificarlo in sicurezza e troverai decine di esempi già pronti da copiare.
Cos’è il file .htaccess?
Il file .htaccess è un file di configurazione utilizzato dai server Apache.
Attraverso questo file è possibile definire regole che controllano il comportamento del server senza dover modificare la configurazione principale dell’hosting.
WordPress utilizza automaticamente il file .htaccess per gestire:
- URL permanenti;
- Redirect;
- Rewrite delle pagine;
- Accesso ai file;
- Sicurezza;
- Compressione;
- Cache del browser.
Dove si trova il file .htaccess WordPress?
Generalmente il file si trova nella cartella principale del sito.
/public_html/
oppure
/htdocs/
All’interno della stessa cartella troverai normalmente:
- wp-admin
- wp-content
- wp-includes
- wp-config.php
- .htaccess
Se non riesci a visualizzarlo potrebbe essere semplicemente nascosto perché si tratta di un file di sistema.
Perché non vedo il file .htaccess?
Molti client FTP e File Manager nascondono automaticamente i file che iniziano con un punto.
Abilita quindi la visualizzazione dei file nascosti.
Se il file continua a non comparire potrebbero esserci due possibilità:
- non è stato ancora creato;
- è stato eliminato accidentalmente.
WordPress crea automaticamente il file .htaccess?
Sì.
Quando abiliti i permalink, WordPress genera automaticamente il file .htaccess con le regole necessarie al corretto funzionamento del sito.
Puoi rigenerarlo semplicemente visitando:
Impostazioni → Permalink
e cliccando su Salva modifiche senza cambiare alcuna impostazione.
A cosa serve il file .htaccess?
Attraverso questo file puoi:
- creare Redirect 301;
- forzare HTTPS;
- forzare WWW o non WWW;
- bloccare indirizzi IP;
- proteggere wp-admin;
- bloccare XML-RPC;
- proteggere wp-config.php;
- abilitare compressione GZIP;
- gestire la cache del browser;
- migliorare la sicurezza WordPress.
Quando NON modificare il file .htaccess
Prima di modificare qualsiasi direttiva è consigliabile creare sempre una copia di backup.
Una singola riga errata può impedire completamente il funzionamento del sito.
Se dopo una modifica compare un errore come:
- Errore 500;
- Errore 403;
- Sito non raggiungibile;
ripristina immediatamente la copia precedente.
.htaccess funziona anche su Nginx?
No.
Il file .htaccess viene utilizzato esclusivamente dai server Apache.
Se il tuo hosting utilizza Nginx, le regole devono essere configurate direttamente nel file di configurazione del server.
Quali problemi può risolvere il file .htaccess?
Configurando correttamente questo file è possibile risolvere numerosi problemi WordPress, tra cui:
- Redirect errati;
- Errore 403;
- Errore 500;
- problemi permalink;
- problemi HTTPS;
- problemi di sicurezza;
- URL duplicate.
Approfondimenti utili:
Cosa vedremo nei prossimi capitoli
Nei prossimi capitoli troverai numerosi esempi pratici pronti da copiare per:
- Redirect 301;
- HTTPS;
- WWW;
- protezione WordPress;
- sicurezza;
- ottimizzazione SEO;
- cache;
- compressione GZIP;
- risoluzione degli errori più comuni.
Come modificare il file .htaccess in sicurezza
Prima di modificare il file .htaccess, crea sempre una copia di backup.
Puoi modificarlo tramite:
- File Manager del tuo hosting;
- FTP (FileZilla);
- SSH;
- cPanel;
- Plesk.
Dopo ogni modifica salva il file e verifica immediatamente che il sito funzioni correttamente.
Redirect 301 di una singola pagina
Il Redirect 301 viene utilizzato quando una pagina è stata spostata definitivamente.
Esempio:
Redirect 301 /vecchia-pagina/ https://www.tuosito.it/nuova-pagina/
Questo tipo di redirect è fondamentale per preservare il posizionamento SEO e trasferire correttamente l’autorità della pagina.
Redirect 301 di un intero dominio
Se hai cambiato dominio puoi reindirizzare automaticamente tutti gli utenti verso il nuovo sito.
RewriteEngine On
RewriteCond %{HTTP_HOST} ^vecchiodominio\.it$ [OR]
RewriteCond %{HTTP_HOST} ^www\.vecchiodominio\.it$
RewriteRule ^(.*)$ https://www.nuovodominio.it/$1 [R=301,L]
Questo tipo di redirect mantiene anche gli URL interni.
Forzare HTTPS
Una delle configurazioni più utilizzate consiste nel reindirizzare automaticamente tutte le richieste HTTP verso HTTPS.
RewriteEngine On
RewriteCond %{HTTPS} !=on
RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
In questo modo ogni visitatore utilizzerà automaticamente la connessione protetta.
Forzare WWW
Se desideri utilizzare sempre la versione con WWW:
RewriteEngine On
RewriteCond %{HTTP_HOST} !^www\. [NC]
RewriteRule ^(.*)$ https://www.%{HTTP_HOST}/$1 [R=301,L]
Rimuovere WWW
Se invece preferisci utilizzare il dominio senza WWW:
RewriteEngine On
RewriteCond %{HTTP_HOST} ^www\.(.*)$ [NC]
RewriteRule ^(.*)$ https://%1/$1 [R=301,L]
L’importante è mantenere una sola versione del dominio per evitare contenuti duplicati.
Redirect dopo una migrazione WordPress
Dopo aver trasferito un sito su un nuovo dominio o hosting, il file .htaccess permette di gestire automaticamente tutti i redirect.
Approfondimento:
Redirect di un’intera cartella
Se hai modificato la struttura del sito puoi reindirizzare automaticamente una cartella.
RedirectMatch 301 ^/blog/(.*)$ https://www.tuosito.it/guide/$1
Molto utile durante riorganizzazioni SEO.
Redirect da HTTP a HTTPS con WWW
Molti siti utilizzano contemporaneamente HTTPS e WWW.
RewriteEngine On
RewriteCond %{HTTPS} off [OR]
RewriteCond %{HTTP_HOST} !^www\. [NC]
RewriteRule ^(.*)$ https://www.%{HTTP_HOST}/$1 [L,R=301]
Redirect da HTTPS WWW a HTTPS senza WWW
RewriteEngine On
RewriteCond %{HTTP_HOST} ^www\.(.*)$ [NC]
RewriteRule ^(.*)$ https://%1/$1 [R=301,L]
Redirect delle vecchie URL
Dopo un restyling del sito è importante mantenere funzionanti le vecchie pagine.
Esempio:
Redirect 301 /realizzazione-siti-web.html https://www.tuosito.it/realizzazione-siti-wordpress/ Redirect 301 /contatti.html https://www.tuosito.it/contatti/ Redirect 301 /servizi.html https://www.tuosito.it/servizi/
Questa operazione evita Errori 404 e preserva il posizionamento su Google.
Redirect di un dominio scaduto
Se possiedi un vecchio dominio ancora indicizzato, puoi trasferire traffico e autorevolezza verso il nuovo sito tramite Redirect 301.
È una pratica molto utilizzata durante operazioni di rebranding.
Errori comuni nei Redirect
Gli errori più frequenti sono:
- loop di redirect;
- redirect temporanei 302 utilizzati per errore;
- URL scritti in modo errato;
- HTTPS non configurato;
- ordine sbagliato delle regole Rewrite.
Questi problemi possono compromettere sia la navigazione sia il posizionamento SEO.
Quando utilizzare il Redirect 301
Il Redirect 301 dovrebbe essere utilizzato ogni volta che una pagina viene spostata definitivamente.
È particolarmente utile durante:
- migrazione WordPress;
- cambio dominio;
- restyling del sito;
- modifica degli URL;
- rimozione di pagine obsolete.
Prossimo capitolo
Nel prossimo step vedremo come utilizzare il file .htaccess per aumentare la sicurezza di WordPress, proteggere wp-admin, bloccare gli attacchi più comuni e migliorare la protezione del sito con esempi pratici già pronti da copiare.
Proteggere WordPress con il file .htaccess
Uno dei principali vantaggi del file .htaccess consiste nella possibilità di aumentare significativamente la sicurezza del sito senza installare plugin aggiuntivi.
Attraverso poche direttive è possibile bloccare numerosi attacchi automatici e ridurre la superficie di rischio.
Prima di modificare il file .htaccess esegui sempre un backup.
Proteggere il file wp-config.php
Il file wp-config.php contiene informazioni estremamente importanti, come le credenziali del database.
È buona pratica impedirne l’accesso diretto.
<files wp-config.php> order allow,deny deny from all </files>
Questa semplice regola impedisce l’accesso diretto al file dal browser.
Bloccare l’esecuzione di file PHP nella cartella uploads
Molti malware cercano di caricare file PHP nella cartella:
/wp-content/uploads/
Disabilitare l’esecuzione di PHP in questa directory rappresenta una delle migliori misure di sicurezza.
Inserisci un file .htaccess all’interno della cartella uploads con il seguente contenuto:
<Files *.php> deny from all </Files>
In questo modo eventuali file PHP caricati non potranno essere eseguiti.
Disabilitare il Directory Browsing
Se il server consente la navigazione delle cartelle, un visitatore potrebbe visualizzare l’elenco dei file presenti.
Per impedirlo:
Options -Indexes
Questa direttiva è consigliata praticamente su qualsiasi sito WordPress.
Bloccare XML-RPC
Il file xmlrpc.php è spesso utilizzato durante attacchi brute force e attacchi DDoS.
Se non utilizzi servizi che lo richiedono puoi bloccarne l’accesso.
<Files xmlrpc.php> order deny,allow deny from all </Files>
Questa configurazione riduce sensibilmente numerosi tentativi di attacco automatico.
Proteggere wp-admin tramite indirizzo IP
Se lavori sempre dalla stessa sede puoi limitare l’accesso al pannello amministratore.
order deny,allow deny from all allow from 123.123.123.123
Sostituisci l’indirizzo IP con il tuo IP pubblico.
Questa soluzione aumenta notevolmente la sicurezza ma è consigliata solo se il tuo IP è fisso.
Bloccare indirizzi IP indesiderati
Se rilevi traffico malevolo puoi impedire l’accesso a specifici indirizzi IP.
order allow,deny deny from 111.111.111.111 allow from all
È possibile inserire più indirizzi IP all’interno della stessa configurazione.
Bloccare User-Agent malevoli
Molti bot utilizzano User-Agent riconoscibili.
Con .htaccess puoi bloccare automaticamente alcune richieste indesiderate.
RewriteEngine On
RewriteCond %{HTTP_USER_AGENT} BadBot [NC]
RewriteRule .* - [F,L]
Questa tecnica viene spesso utilizzata insieme ai firewall applicativi.
Proteggere i file sensibili
Oltre a wp-config.php è consigliabile limitare l’accesso ad altri file di sistema.
Ad esempio:
<FilesMatch "^(readme\.html|license\.txt)"> order allow,deny deny from all </FilesMatch>
In questo modo vengono nascosti file che potrebbero fornire informazioni utili a un attaccante.
Bloccare l’accesso ai file nascosti
I file che iniziano con un punto, come .htaccess, non dovrebbero essere accessibili dal browser.
RedirectMatch 403 /\..*$
Questa direttiva impedisce l’accesso ai file nascosti del server.
Limitare l’accesso alla cartella wp-includes
La cartella wp-includes contiene numerosi file di sistema che normalmente non devono essere richiamati direttamente.
Una corretta configurazione può ridurre diversi tentativi di attacco.
Proteggere WordPress senza plugin
Molte delle configurazioni viste finora consentono di aumentare sensibilmente la sicurezza del sito senza installare plugin aggiuntivi.
Naturalmente questo non sostituisce una corretta manutenzione del sito.
Per una protezione completa è consigliabile mantenere sempre aggiornati:
- WordPress;
- plugin;
- tema;
- PHP;
- backup.
Approfondimenti utili:
Quando NON modificare il file .htaccess
Se non sei sicuro dell’effetto di una direttiva, evita di applicarla direttamente sul sito in produzione.
Una configurazione errata può provocare:
- Errore 500;
- Errore 403;
- redirect infiniti;
- sito completamente offline.
Nel prossimo capitolo vedremo come utilizzare il file .htaccess per migliorare le prestazioni del sito, attivare la compressione GZIP, configurare la cache del browser e risolvere alcuni degli errori più comuni di WordPress.
Migliorare le prestazioni di WordPress con il file .htaccess
Oltre alla sicurezza, il file .htaccess può contribuire a migliorare le prestazioni del sito intervenendo su cache, compressione e gestione delle risorse statiche.
Una configurazione corretta consente di ridurre il numero di richieste al server e migliorare i tempi di caricamento.
Abilitare la compressione GZIP
La compressione GZIP riduce la dimensione dei file inviati dal server al browser.
Se il server supporta il modulo mod_deflate, puoi utilizzare una configurazione come la seguente:
<IfModule mod_deflate.c> AddOutputFilterByType DEFLATE text/html AddOutputFilterByType DEFLATE text/plain AddOutputFilterByType DEFLATE text/xml AddOutputFilterByType DEFLATE text/css AddOutputFilterByType DEFLATE application/javascript AddOutputFilterByType DEFLATE application/json AddOutputFilterByType DEFLATE application/xml </IfModule>
Questa configurazione riduce il traffico dati e velocizza il caricamento delle pagine.
Abilitare la cache del browser
Il browser può memorizzare immagini, CSS e JavaScript per evitare di scaricarli nuovamente ad ogni visita.
Con il modulo mod_expires puoi definire la durata della cache.
<IfModule mod_expires.c> ExpiresActive On ExpiresByType image/jpg "access plus 1 year" ExpiresByType image/jpeg "access plus 1 year" ExpiresByType image/png "access plus 1 year" ExpiresByType image/webp "access plus 1 year" ExpiresByType text/css "access plus 1 month" ExpiresByType application/javascript "access plus 1 month" </IfModule>
Questa tecnica migliora il punteggio nei principali strumenti di analisi delle prestazioni.
Disabilitare gli ETag
Gli ETag possono creare inefficienze in alcune configurazioni server.
Per disabilitarli:
<IfModule mod_headers.c> Header unset ETag </IfModule> FileETag None
Questa configurazione viene spesso utilizzata insieme alla cache del browser.
Proteggere gli hotlink delle immagini
L’hotlink consiste nell’utilizzare direttamente le immagini presenti sul tuo server da altri siti.
Per impedirlo:
RewriteEngine On
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^https://(www\.)?tuodominio\.it [NC]
RewriteRule \.(jpg|jpeg|png|gif|webp)$ - [F]
In questo modo riduci il consumo di banda causato da siti esterni.
Forzare il download di determinati file
Puoi configurare il server affinché alcuni file vengano scaricati automaticamente.
È una funzione utile per PDF, documenti e archivi ZIP.
Limitare l’accesso a file sensibili
Oltre a wp-config.php, puoi proteggere altri file che normalmente non devono essere consultabili pubblicamente.
Ridurre l’esposizione di questi file aumenta il livello di sicurezza del sito.
Errore 500 causato dal file .htaccess
Una direttiva errata è una delle principali cause dell’Errore 500 Internal Server Error.
I motivi più frequenti sono:
- sintassi errata;
- moduli Apache non disponibili;
- direttive incompatibili con l’hosting;
- regole Rewrite non corrette.
Se il sito smette improvvisamente di funzionare dopo aver modificato il file .htaccess, ripristina immediatamente la versione precedente.
Approfondimento:
Errore 403 causato dal file .htaccess
Regole troppo restrittive possono impedire l’accesso a:
- wp-admin;
- wp-login.php;
- cartelle WordPress;
- file CSS e JavaScript;
- REST API.
In presenza di un Errore 403 è consigliabile verificare le ultime modifiche apportate al file.
Approfondimento:
Come rigenerare automaticamente il file .htaccess
Se il file è stato eliminato o danneggiato, WordPress può ricrearlo automaticamente.
È sufficiente accedere a:
Impostazioni → Permalink
e premere Salva modifiche.
WordPress genererà nuovamente il file con le direttive standard.
Il file .htaccess è stato cancellato
Se il file non esiste più, il sito potrebbe continuare a funzionare, ma alcune funzionalità potrebbero smettere di operare correttamente.
I sintomi più comuni sono:
- permalink non funzionanti;
- Errori 404;
- redirect mancanti;
- problemi HTTPS.
Plugin che modificano automaticamente il file .htaccess
Diversi plugin aggiungono automaticamente nuove direttive al file .htaccess.
Tra questi troviamo frequentemente:
- plugin cache;
- plugin sicurezza;
- plugin SEO;
- plugin redirect;
- plugin firewall.
Dopo l’installazione di un nuovo plugin è sempre consigliabile verificare che il sito continui a funzionare correttamente.
Quando richiedere assistenza tecnica
Se dopo una modifica il sito non è più raggiungibile oppure vengono visualizzati Errori 403 o 500, evita ulteriori tentativi casuali.
Una verifica tecnica del file .htaccess consente generalmente di individuare rapidamente la direttiva responsabile e ripristinare il corretto funzionamento del sito.
Nel prossimo e ultimo capitolo completeremo la guida con una raccolta di FAQ SEO Premium, esempi aggiuntivi, conclusioni, meta title, meta description e tutte le ottimizzazioni finali.
Domande frequenti sul file .htaccess WordPress
Cos’è il file .htaccess di WordPress?
Il file .htaccess è un file di configurazione utilizzato dai server Apache per gestire redirect, permalink, sicurezza, cache e numerose altre impostazioni del sito.
Dove si trova il file .htaccess?
Nella maggior parte dei casi si trova nella cartella principale di WordPress, insieme a wp-config.php, wp-admin, wp-content e wp-includes.
Perché non riesco a vedere il file .htaccess?
Molti client FTP e File Manager nascondono automaticamente i file che iniziano con un punto. È sufficiente attivare la visualizzazione dei file nascosti.
WordPress crea automaticamente il file .htaccess?
Sì. Quando vengono configurati i permalink, WordPress genera automaticamente il file con le regole necessarie.
Come rigenerare il file .htaccess?
Accedi a Impostazioni → Permalink e fai clic su Salva modifiche. WordPress ricreerà automaticamente il file.
Il file .htaccess funziona anche su Nginx?
No. Il file .htaccess è supportato esclusivamente dai server Apache. Su Nginx le regole devono essere configurate nel file di configurazione del server.
È pericoloso modificare il file .htaccess?
Sì. Una sola direttiva errata può rendere il sito non raggiungibile o causare Errori 403 e 500. Prima di ogni modifica è consigliabile creare una copia di backup.
Posso utilizzare il file .htaccess per migliorare la SEO?
Sì. Attraverso Redirect 301, gestione HTTPS e URL canonici puoi migliorare la struttura del sito ed evitare problemi di contenuti duplicati.
Il file .htaccess migliora la sicurezza?
Sì. Può essere utilizzato per proteggere file sensibili, bloccare XML-RPC, limitare l’accesso a wp-admin e impedire il directory browsing.
Posso velocizzare WordPress con il file .htaccess?
Sì. Attraverso cache del browser, compressione GZIP e altre ottimizzazioni è possibile migliorare le prestazioni del sito.
Quali plugin modificano automaticamente il file .htaccess?
Molti plugin di cache, sicurezza, SEO e redirect aggiungono automaticamente nuove direttive al file.
Come verificare se il file .htaccess contiene errori?
Se il sito restituisce Errori 403 o 500 subito dopo una modifica, è molto probabile che una direttiva non sia compatibile con il server o contenga errori di sintassi.
Quando utilizzare i Redirect 301?
Ogni volta che una pagina viene spostata definitivamente, durante una migrazione del sito o un cambio di dominio.
Il file .htaccess può bloccare un malware?
Può ridurre significativamente alcune tipologie di attacco, ma non sostituisce una corretta strategia di sicurezza e manutenzione.
Posso eliminare il file .htaccess?
È sconsigliato. Se viene eliminato, alcune funzionalità di WordPress potrebbero smettere di funzionare correttamente fino alla sua rigenerazione.
Gli errori WordPress più comuni causati dal file .htaccess
Una configurazione errata del file .htaccess può provocare diversi problemi.
Quando richiedere assistenza WordPress
Se dopo aver modificato il file .htaccess il sito risulta irraggiungibile, compaiono Errori 403, Errori 500 o redirect infiniti, è consigliabile interrompere immediatamente le modifiche.
Su WpSupporto interveniamo quotidianamente per risolvere problemi legati a:
- file .htaccess danneggiati;
- redirect errati;
- Errori 403 e 500;
- migrazioni WordPress;
- problemi di sicurezza;
- malware;
- ottimizzazione delle prestazioni.
Parla subito con un tecnico WordPress
Conclusioni
Il file .htaccess rappresenta uno degli strumenti più potenti a disposizione di chi gestisce un sito WordPress.
Con poche direttive è possibile migliorare sicurezza, prestazioni, SEO e gestione dei redirect, ma è fondamentale intervenire con attenzione e mantenere sempre una copia di backup.
Seguendo gli esempi presenti in questa guida potrai configurare correttamente il file .htaccess, risolvere numerosi problemi comuni e ottimizzare il tuo sito WordPress in modo professionale.


