Skip to content
🔧 Come risolvere l'errore ERR_TOO_MANY_REDIRECTS in WordPress: 6 soluzioni

🔧 Come risolvere l'errore ERR_TOO_MANY_REDIRECTS in WordPress: 6 soluzioni

Visiti il vostro sito e invece della solita pagina il browser mostra "ERR_TOO_MANY_REDIRECTS". Il sito non si carica, il pannello di amministrazione è inaccessibile e i visitatori vedono un errore. Panico? No, è risolvibile.

Tecnicamente, l'errore significa che il browser è rimasto intrappolato in un loop di reindirizzamento infinito: la pagina A vi manda alla pagina B, che vi rimanda alla A, e così via finché il browser non si arrende. In WordPress questa situazione si verifica più spesso di quanto si vorrebbe, e quasi sempre il colpevole non sono gli hacker ma una modifica innocente alle impostazioni.

Ecco sei metodi collaudati per rimettere online il sito. Dal più rapido (svuotare la cache del browser) fino al livello server (verificare i reindirizzamenti HTTPS). Seguiteli in ordine e uno risolverà il problema.

💡 Panoramica rapida:

  • Svuotate la cache e i cookie del browser: escludete una causa locale
  • Verificate l'URL del sito nelle impostazioni di WordPress e in wp-config.php: valori discordanti di WP_HOME/WP_SITEURL rompono i reindirizzamenti
  • Svuotate la cache dei plugin WP (WP Super Cache, WP Rocket, W3 Total Cache) e della CDN: la cache conserva le vecchie regole
  • Ricreate .htaccess: un file corrotto genera spesso reindirizzamenti aggiuntivi
  • Disattivate i plugin e individuate quello in conflitto: specialmente quelli che gestiscono reindirizzamenti o SSL
  • Verificate le impostazioni HTTPS: un reindirizzamento forzato da HTTP a HTTPS configurato in modo errato manda il traffico in loop
Svuotare cache e cookie nel browser Chrome

Iniziate dalle basi. I browser memorizzano i reindirizzamenti in cache e, se il vostro sito ha avuto un malfunzionamento temporaneo, la vecchia cache può continuare a rimandarvi in circolo anche dopo che il problema lato server è stato risolto.

In Chrome: tre puntini in alto a destra → "Impostazioni" → "Privacy e sicurezza" → "Cancella dati di navigazione". Selezionate "Cookie" e "Immagini nella cache", impostate l'intervallo di tempo su "Tutto" e cliccate "Cancella dati".

In Firefox: tre linee → "Impostazioni" → "Privacy e sicurezza" → sezione "Cookie e dati dei siti web" → "Cancella dati". Selezionate entrambe le caselle e confermate.

Dopo la pulizia, aprite il sito in modalità incognito (Ctrl+Maiusc+N in Chrome). Ha funzionato? Allora il problema era locale. In caso contrario, andate avanti. A proposito, se dovete azzerare completamente la cache in browser diversi, abbiamo una guida separata su come svuotare la cache del browser; cercatela sul sito.

2. Verificare l'URL del sito nelle impostazioni di WordPress

Impostazioni URL del sito nel pannello di amministrazione WordPress

Una discordanza tra l'indirizzo del sito e l'indirizzo WordPress è una delle cause più comuni dei loop di reindirizzamento. Andate nel pannello di amministrazione: "Impostazioni" → "Generali". I campi "Indirizzo WordPress (URL)" e "Indirizzo sito (URL)" devono coincidere (o differire intenzionalmente se WordPress è in una sottocartella).

Assicuratevi che:

  • Il protocollo sia lo stesso ovunque: o https:// dappertutto o http:// dappertutto
  • www sia presente in entrambi i campi o assente in entrambi
  • Il dominio sia scritto correttamente, senza errori di battitura o barre finali

Avete cliccato "Salva" ma l'errore persiste? Oppure il pannello di amministrazione non si apre proprio a causa dei reindirizzamenti? Allora modificate tramite wp-config.php.

Collegatevi al server via FTP/SFTP o tramite il file manager del vostro hosting. Trovate il file wp-config.php nella root del sito e aggiungete due righe (subito dopo <?php o prima di /* That's all, stop editing! */):

1define('WP_HOME', 'https://your-site.com');
2define('WP_SITEURL', 'https://your-site.com');

Sostituite your-site.com con il vostro dominio effettivo, con il protocollo corretto e senza www se il vostro sito si apre senza. Salvate, caricate di nuovo sul server e verificate il sito. Spesso i reindirizzamenti spariscono subito dopo questo passaggio.

3. Svuotare la cache di WordPress e della CDN

Svuotare la cache nel plugin WP Super Cache

Se il tuo sito ha un plugin di caching, potrebbe aver memorizzato redirect «rotti» e continuare a servirli anche dopo che l’origine è stata corretta.

Vai nel pannello di amministrazione e trova la pagina di gestione della cache:

Usi Cloudflare o un’altra CDN? Vai nel pannello della CDN e svuota la cache da lì. Dopo averla svuotata, metti temporaneamente in pausa la CDN (in «Modalità sviluppo» o «Bypass cache») e verifica il sito. A volte è la CDN stessa a causare i loop di redirect a causa di un disallineamento HTTP/HTTPS a livello di proxy.

4. Ricrea il file.htaccess

Contenuto del file .htaccess di WordPress per il ripristino

.htaccess è un file di testo nella root del sito tramite il quale Apache gestisce i redirect. Una riga di troppo, un plugin difettoso o una modifica manuale, e il sito inizia a fare loop.

Collegati al server via FTP/SFTP, individua .htaccess e rinominalo in .htaccess_old. Questo disabilita tutte le regole personalizzate ma conserva una copia nel caso ci fosse qualcosa di importante all’interno.

Ora devi creare un nuovo file .htaccess pulito con le regole predefinite di WordPress. Se il pannello di amministrazione è accessibile: «Impostazioni» → «Permalink» → clicca semplicemente su «Salva modifiche» (senza cambiare nulla). WordPress ricreerà .htaccess automaticamente.

Pannello di amministrazione non accessibile? Crea il file manualmente e copiaci dentro questo:

1<IfModule mod_rewrite.c>
2RewriteEngine On
3RewriteBase /
4RewriteRule ^index\.php$ - [L]
5RewriteCond %{REQUEST_FILENAME} !-f
6RewriteCond %{REQUEST_FILENAME} !-d
7RewriteRule . /index.php [L]
8</IfModule>

Salva, carica nella root del sito e verifica. Se utilizzi Nginx, le regole vanno nella configurazione del server e .htaccess non ha alcun effetto; per modificare la configurazione di Nginx devi avere accesso a /etc/nginx/sites-available/.

5. Individua il plugin che causa il conflitto

Cartella plugins_disabled per disattivare tutti i plugin di WordPress

I plugin di redirect, i plugin SSL (Really Simple SSL, WP Force SSL) e persino alcuni plugin di caching sono frequenti responsabili dell’errore ERR_TOO_MANY_REDIRECTS. Soprattutto dopo un aggiornamento di WordPress o di un plugin.

Se il pannello di amministrazione funziona: disabilita TUTTI i plugin in una volta sola («Plugin» → seleziona tutto → «Disattiva» → «Applica»). Verifica il sito. L’errore è scomparso? Riattiva i plugin uno per uno e verifica dopo ciascuno per trovare il colpevole.

Il pannello di amministrazione non si carica a causa dei redirect? Collegati al server via FTP, vai in wp-content/ e rinomina la cartella plugins in plugins_disabled. WordPress vedrà che la cartella plugins non esiste e disattiverà automaticamente tutti i plugin.

Il sito si è aperto senza l’errore? Ripristina i plugin uno per uno: rinomina di nuovo la cartella di un plugin specifico (ad esempio, plugins_disabled/wordpress-seoplugins/wordpress-seo), verifica il sito, ripeti. Il plugin dopo il quale l’errore ricompare è l’origine del problema. Eliminalo o trova un’alternativa.

6. Correggi le impostazioni di redirect HTTPS

Configurare il redirect HTTPS nel file .htaccess di WordPress

L'errore compare spesso dopo aver installato un certificato SSL, quando il sito inizia a reindirizzare forzatamente da HTTP a HTTPS ma la configurazione non è corretta.

Se usi Apache, apri .htaccess e verifica la presenza di regole di reindirizzamento duplicate o in conflitto. Un reindirizzamento HTTP-to-HTTPS corretto per Apache si presenta così:

1RewriteEngine On
2RewriteCond %{HTTPS} off
3RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]

Per Nginx, la regola va inserita nella configurazione del server:

1server {
2 listen 80;
3 server_name your-site.com www.your-site.com;
4 return 301 https://your-site.com$request_uri;
5}

Una trappola comune: il sito è dietro Cloudflare o un altro servizio proxy, l'SSL è configurato a livello di proxy, ma WordPress tenta di reindirizzare a HTTPS per conto proprio. Questo crea un doppio reindirizzamento e causa un loop. La soluzione: in Cloudflare, attiva la modalità «Full (strict)» nella sezione SSL/TLS e configura un certificato sul server (puoi usare un certificato origin di Cloudflare). Lato WordPress, rimuovi i plugin per l'HTTPS forzato; le impostazioni del proxy sono sufficienti.

⁉️🤔 Domande frequenti

Perché l'errore compare all'improvviso se non ho cambiato nulla?

Molto spesso a causa degli aggiornamenti automatici. WordPress si è aggiornato da solo, un plugin ha scaricato una nuova versione, oppure l'hosting ha modificato le impostazioni PHP o attivato l'HTTPS forzato. In superficie «non ho toccato nulla», ma sotto il cofano ci sono modifiche. Controlla la cronologia degli aggiornamenti nel pannello di amministrazione; il colpevole di solito è evidente.

Posso risolvere il problema senza accesso al pannello di amministrazione di WordPress?

Sì, la maggior parte dei passaggi di questa guida si esegue senza il pannello di amministrazione: modifichi wp-config.php e .htaccess via FTP/SFTP e rinomini la cartella plugins. Solo la pulizia della cache dei plugin richiede l'accesso al pannello di amministrazione, ma anche senza puoi semplicemente rinominare la cartella del plugin di caching, disattivandolo di fatto.

Cambiare browser o dispositivo può aiutare?

Temporaneamente sì, ma non risolve il problema lato server. L'errore compare indipendentemente dal browser se la causa radice è sul server. Cambiare browser conferma solo che il problema non è la cache locale, e a quel punto devi procedere con i passaggi da 2 a 6.

Cosa devo fare se nessuno dei sei metodi ha funzionato?

Controlla la catena di reindirizzamenti con uno strumento come Redirect-Checker.org; ti mostrerà quali URL stanno creando il loop. Contatta l'assistenza del tuo hosting: a volte il problema risiede in impostazioni del server (configurazione nginx, load balancer) a cui non hai accesso. Inoltre, attiva WP_DEBUG in wp-config.php per sicurezza; i log potrebbero rivelare il plugin o il tema specifico che causa l'errore.

Un tema WordPress può causare questo errore?

Sì, anche se meno spesso dei plugin. Alcuni temi aggiungono le proprie regole di reindirizzamento in functions.php, ad esempio per l'HTTPS forzato o i redirect post-login. Se disattivare i plugin non ha aiutato, passa temporaneamente a un tema predefinito (Twenty Twenty-Five) rinominando la cartella del tuo tema in wp-content/themes/.

Errore risolto. E adesso?

ERR_TOO_MANY_REDIRECTS fa paura a vedersi ma si risolve in 10-15 minuti se segui i passaggi. In nove casi su dieci il colpevole è o le impostazioni URL (passaggio 2), un .htaccess corrotto (passaggio 4) o un redirect SSL (passaggio 6). Inizia da quelli, e probabilmente non dovrai andare oltre.

E quando il tuo sito funziona di nuovo, fai subito un backup. Sul serio. wp-config.php, .htaccess e l'intera cartella wp-content: salvali in un posto sicuro. Il prossimo errore (e ce ne sarà uno, WordPress è WordPress) ti troverà preparatissimo.

E se non hai ancora guardato il video all'inizio dell'articolo, torna indietro e guardalo. Mostra visivamente l'intero processo di correzione su un sito reale. Funziona ogni volta.