Quando i visitatori del vostro sito vedono l’errore 520 nel loro browser, significa che Cloudflare sta inviando questo messaggio perché il vostro server ha restituito una risposta vuota, sconosciuta o inaspettata.
L’errore 520 può essere affrontato cercando prima la causa del problema e poi risolto seguendo questi passaggi.
Cominciamo subito:
Alla Ricerca dei Problemi che Causano l’Errore 520
Dato che l’errore 520 si presenta per un problema sul vostro server, potete risolvere cercando nel vostro registro degli errori.
Disattivate Cloudflare
Prima di iniziare a cercare il problema, è necessario disattivare Cloudflare. Questo permette di isolare il problema e fare in modo che l’anomalia possa essere replicata senza Cloudflare.
Passo 1
Iniziate accedendo a Cloudflare. Quindi individuate il vostro sito nella lista e cliccateci sopra.
Passo 2
Successivamente, fate clic sulla scheda DNS, quindi sulla nuvola arancione nella sezione Proxy status nella tabella. Saprete che Cloudflare è stato disabilitato perché la nuvola sarà diventata grigia.
Mettere in Pausa Cloudflare
In alternativa, potete scegliete di mettere in pausa Cloudflare dopo aver fatto il login.
Passo 1
Fate clic sul vostro sito collegato dall’elenco.
Passo 2
Quindi, scorrere verso il basso fino a visualizzare la sezione Advanced Actions nella barra laterale. Fate clic sul link Pause Cloudflare on Site.
Passo 3
Sulla pagina verrà visualizzato un pop-up che chiede di confermare di voler mettere in pausa Cloudflare. Procedete e fate clic sul pulsante Confirm.
Passate alla Modalità di Sviluppo
Se non volete mettere in pausa o disabilitare Cloudflare, potete mantenerlo in funzione, ma metterlo in modalità di sviluppo così da poter ancora individuare la causa dell’errore 520.
Passo 1
Dopo aver effettuato l’accesso a Cloudflare, fate clic sulla scheda Caching posta in alto nella pagina.
Passo 2
Subito dopo, scorrere in basso fino alla sezione Development Mode e fate clic sul pulsante Off. Ora dovrebbe dire “On”.
Controllate i Log degli Errori del Vostro Server
Ora che avete disabilitato, messo Cloudflare in pausa o in modalità di sviluppo, cercare le cause dell’errore 520 controllando i log degli errore del vostro server.
Individuare il vostro registro degli errori può essere diverso da un host all’altro, quindi chiedete al vostro host nel caso in cui non siate sicuri di dove trovare i vostri registri degli errori.
Se il vostro provider di hosting utilizza cPanel, potete adottare la seguente procedura.
Passo 1
Accedete a cPanel e, nel cruscotto, andate alla sezione Metrics. Poi fate clic sul pulsante Errors.
Passo 2
La pagina del registro degli errori mostra gli errori in ordine cronologico inverso e fino a 300 dei messaggi più recenti. Il log degli errori può visualizzare più messaggi se voi o il vostro host avete regolato le impostazioni.
Analizzare il Registro alla Ricerca dell’Errore 520 Utilizzando MyKinsta
Se il vostro sito WordPress è ospitato su Kinsta, potete seguire questa procedura per analizzare il vostro registro degli errori.
Passo 1
Effettuate il login in MyKinsta e fate clic su Siti nel menu a sinistra. Quindi selezionare il sito che volete analizzare dall’elenco presente nella pagina.
Passo 2
Fate clic sulla scheda Log. Di default, viene visualizzato il registro degli errori. Se non vedete nulla nell’elenco, ciò è dovuto al fatto che non si sono verificati errori sul vostro sito.
Come Interpretare il Registro degli Errori
Ogni messaggio presente in un registro degli errori ha una struttura. Se la comprendete, allora potete interpretare i messaggi di errore che vengono fuori.
[Fri Oct 11 17:00:30 2019] [error] [client 123.4.56.7] error description: /path/to/file/with/error
La data e l’ora del messaggio sono elencate per prime, seguite dalla direttiva LogLevel, che indica il livello di gravità del messaggio.
Poi c’è l’indirizzo IP del client. Ecco chi ha fatto nascere il problema.
Infine, viene visualizzato il messaggio, che può contenere il percorso del file interessato.
Ecco i livelli di gravità LogLevel che potrebbero apparire nei messaggi del vostro registro degli errori:
- Emerg – Questo consente di sapere che il problema genera un’emergenza e che il server non è disponibile.
- Alert – Se si vede questo livello, bisogna agire immediatamente.
- Crit – Questo denota una condizione critica.
- Error – Ciò significa che si è verificato un errore.
- Warn – Un messaggio con questo livello è un avviso su un problema che richiede la vostra attenzione, ma non è critico.
- Notice – Questo significa che il vostro server opera normalmente, ma sono disponibili dei dati significativi sulle condizioni del server.
- Info – Con questo livello sono disponibili informazioni generali.
- Debug – Questi messaggi contengono una serie di dettagli generati quando è abilitato il debug.
Utilizzate un Comando cURL per Risolvere l’Errore 520
Potete anche utilizzare un comando cURL per risolvere l’errore 520 mediante un test sul server di origine.
curl -vso /dev/null --user-agent "Mozilla 5.0" -H "Host: your-site.com" http://123.45.6.789/wp-login.php
Assicuratevi di cambiare “your-site.com” con il vostro dominio attuale. Dovrete anche aggiornare “123.45.6.789” sostituendolo con l’indirizzo IP del vostro sito. Se avete cambiato la vostra pagina di login, dovreste cambiare anche “wp-login.php”.
Un’intestazione di una risposta di successo potrebbe essere simile all’esempio che segue:
* Hostname was NOT found in DNS cache
* Trying 123.45.6.789...
* Connected to 123.45.6.789 (123.45.6.789) port 80 (#0)
> GET /login HTTP/1.1
> User-Agent: Mozilla 5.0
> Accept: */*
> Host: your-site.com
>
< HTTP/1.1 200 OK
< Content-Type: text/html
< Date: Day, DD, Month Year Hour:Minute:Second Timezone
{ [12345 bytes data]
* Connection #0 to host 123.45.6.789 left intact
Se si vede una cosa del genere, significa che è tutto a posto e che il sito è stato raggiunto senza una risposta contenente l’errore 520.
D’altra parte, se si vede un header di risposta simile all’esempio che segue, significa che si è verificato l’errore 520 mentre Cloudflare era attivo:
* Hostname was NOT found in DNS cache
* Trying 123.45.6.789...
* Connected to 123.45.6.789 (123.45.6.789) port 80 (#0)
> GET /login HTTP/1.1
> User-Agent: Mozilla 5.0
> Accept: */*
> Host: your-site.com
>
* Empty reply from server
* Connection #0 to host 123.45.6.789 left intact
Come Generare un File HAR
Un HAR è un file di archivio HTTP. Contiene archivi per le richieste che vanno al server di origine, anche attraverso Cloudflare.
Può esservi di aiuto nella ricerca dei problemi perché mette a confronto le intestazioni di risposta provenienti dal server di origine e da Cloudflare, quando questo viene utilizzato come proxy.
Viene anche utilizzato per confermare che le intestazioni sono troppo grandi, nel caso in cui sia questo il motivo per cui è apparso l’errore 520.
È possibile creare un file HAR con il browser seguendo questi passaggi:
Chrome
Passo 1
Aprite il vostro browser e fate clic con il tasto destro del mouse sulla pagina. Quindi selezionate Ispeziona.
Passo 2
Una volta aperto il pannello, fate clic sulla scheda Network e assicuratevi che in alto ci sia un pulsante circolare rosso, sul lato sinistro del pannello. Se è grigio, fateci cli copra.
Passo 3
Selezionate l’opzione Preserve log accanto al pulsante di registrazione e poi fate clic sul pulsante di cancellazione.
Passo 4
Caricate la pagina che riporta l’errore 520. Quindi fate clic con il tasto destro del mouse su un punto qualsiasi dell’area messaggi del developer tool di Chrome.
Selezionate la voce Save as HAR with Content (Salva come HAR con contenuto) e salvate il file sul computer.
Firefox
Passo 1
Aprite Firefox e cliccate con il tasto destro del mouse su un punto qualsiasi della pagina. Quindi, selezionate Inspect Element (Ispeziona elemento).
Passo 2
Andate alla scheda Network e visitate la pagina che presenta l’errore 520. Fate clic con il tasto destro del mouse sui messaggi presenti nel pannello e selezionate l’opzione Save All as HAR.
Salvate il file sul computer
Edge
Passo 1
Aprite il browser Edge e fate clic con il tasto destro del mouse sulla pagina. Selezionate Inspect dall’elenco.
Passo 2
Aprite il browser Edge e fate clic con il tasto destro del mouse sulla pagina. Selezionate Inspect dall’elenco.
Passo 3
Andate alla pagina in cui si verifica l’errore 520. Quindi fate clic con il tasto destro del mouse sui messaggi presenti nel pannello degli strumenti per sviluppatori e selezionate l’opzione Save all as HAR with content.
Salvate il file sul computer.
Safari
Passo 1
Aprite Safari. Su Windows cliccate con il tasto destro del mouse sulla pagina, su Mac premete CMD sulla tastiera e fate clic. Selezionate Inspect Element dall’elenco.
Passo 2
Andate alla scheda Network. Spuntate l’opzione Preserve Log, quindi andate alla pagina con l’errore 520.
Passo 3
Fate clic sul pulsante Export e salvate il file HAR sul computer.
Eliminare le Cause più Frequenti dell’Errore 520
Ora che avete il vostro registro degli errori, cercate al suo interno e vedete se notate uno dei problemi che riportiamo qui sotto. Quindi seguite la procedura per risolvere il problema.
L’Applicazione PHP del Server di Origine Server È Andata in Crash
Un problema frequente che causa l’errore 520 è che una delle applicazioni PHP si è bloccata sul vostro server. Il riavvio di PHP rimuoverà l’errore.
Passo 1
Utilizzando SSH potete trasmettere il comando sottostante per i server Apache:
apache2ctl restart
Per i server Nginx, potrete riavviare PHP utilizzando il seguente comando:
service nginx restart
Riavviare PHP in MyKinsta
Se il vostro sito è ospitato su Kinsta, potete riavviare PHP con pochi click.
Passo 1
Accedete a MyKinsta e fate clic su Siti sulla sinistra. Poi cliccate sul vostro sito presente nella lista.
Passo 2
Aprite la scheda Strumenti e fate clic sul pulsante Riavvia PHP.
Gli Indirizzi IP di Cloudflare non Sono nella White List
Un’altra ragione per cui può verificarsi l’errore 520 è che gli indirizzi IP di Cloudflare non sono nella whitelist. È possibile aggiungerli, ma i passaggi variano da un provider di hosting all’altro.
Se non siete sicuri di come si fa a mettere in whitelist gli IP, contattate il vostro host, soprattutto se non trovate nessuna impostazione per farlo da soli.
Da Kinsta, gli indirizzi IP di Cloudflare sono in whitelist di default, quindi non c’è bisogno di preoccuparsi di questa possibile causa dell’errore. Inoltre, non avrà alcuna conseguenza sulle altre possibili cause dell’errore.
I Timeout di Inattività TCP Sono Minori di 300 Secondi
Anche il Transmission Control Protocol (TCP) potrebbe causare l’errore 520.
TCP è un protocollo standard che stabilisce e mantiene una connessione di rete. Se il TCP è impostato su un timeout inferiore a 300 secondi, potrebbe causare la comparsa dell’errore 520.
Il timeout del servizio TCP può essere modificato con un comando CLI:
set service Service-HTTP-1 -svrTimeout 500
Gli Header Superano gli 8 KB
Questo problema è normalmente dovuto ad un numero eccessivo di cookie o a cookie troppo grandi. Il file HAR che avete scaricato durante la ricerca dei problemi vi dirà se il problema è questo.
Cloudflare ha un limite di 8 KB per gli header.
Se avete creato un plugin che richiede troppi cookie o ha troppi dati nei suoi cookie, cercate di ridurli. Oppure, se utilizzate molti plugin che necessitano tutti di cookie, rimuovetene alcuni (dovreste sempre utilizzare plugin di qualità).
Utenti di Elementor
Quando provate a modificare il vostro sito WordPress con Elementor e ottenete l’errore 520 – “Web server is returning an unknown error” – potete controllare quanto segue.
Per prima cosa, provate con un browser web diverso.
Se il problema persiste e il vostro sito usa Cloudflare, potreste avere un problema con la funzione Rocket Loader di Cloudflare.
Il problema si deve a Rocket Loader che cambia automaticamente gli script per caricarli in modo asincrono, il che rompe l’editor del sito e vi impedisce di fare modifiche.
Creando delle regole in Cloudflare è possibile risolvere questo problema.
Per le pagine di Elementor: URL del sito/elementor
Per i template di Elementor: URL del sito/?elementor_library=*
Risposta Vuota dal Vostro Server
Questo problema si verifica quando al vostro sito manca un codice di stato HTTP o un corpo della risposta. Per risolvere il problema, assicuratevi che le impostazioni del DNS siano configurate correttamente per il dominio del vostro sito.
I passi necessari per verificare le impostazioni dipendono dal vostro host DNS. Se il vostro piano di hosting comprende i DNS, allora verificate con il vostro provider di hosting.
Può essere importante rilevare che, se si aggiornano le impostazioni del DNS, la propagazione del sito potrebbe richiedere fino a 72 ore. Ciò significa che il vostro sito potrebbe non essere disponibile per un massimo di tre giorni.
Dopo aver modificato le impostazioni DNS, dovrete cancellare la cache del sito. Se avete installato un plugin per la cache sul vostro sito WordPress, potete controllare nella documentazione se non capite come cancellare la cache del sito dalle impostazioni del plugin.
Potete anche cancellare la cache del sito attraverso il vostro provider di hosting. Chiedete a loro se avete bisogno di sapere come eseguire questa operazione per il vostro sito.
Se il vostro sito è ospitato su Kinsta, potete fare clic nel menu su Siti, poi sul vostro sito in elenco.
Poi fate clic sulla scheda Strumenti e quindi sul pulsante Svuota cache.
Se avete aggiornato le impostazioni DNS, il vostro sito è di nuovo disponibile, avete svuotato la cache del vostro sito e tuttavia avete ancora l’errore 520, allora riavviate il vostro server.
Se non trovate l’opzione nelle vostre impostazioni, contattate il team di supporto di Kinsta e vi aiuteremo noi.
Header di Risposta Assenti
“Un header di risposta è un’intestazione che può essere utilizzata in una risposta HTTP e che non si riferisce al contenuto del messaggio. Glie header di risposta, come Age, Location o Server sono utilizzate per fornire un contesto più dettagliato della risposta”.
La mancanza degli header di risposta può essere causata da una moltitudine di motivi.
La soluzione migliore per risolvere questo problema è utilizzare uno strumento di debug come Fiddler, che permette di vedere esattamente qual è il problema in modo da permettere di risolverlo.
Il Server non Restituisce Risposte Corrette agli Errori HTTP
Un server che ha inviato una risposta di errore non valida, potrebbe causare l’errore 520. Ciò significa che il messaggio non rientrava nell’elenco dei codici di risposta HTTP standard.
È causato dal vostro server, oppure potrebbe anche essere qualcosa presente sul vostro server, come applicazioni PHP o eventualmente plugin utilizzati sul vostro sito WordPress.
Se non riuscite a trovare la causa del codice di errore improprio, provate a contattare il supporto per chiedere assistenza.
Abilitare di Nuovo Cloudflare
Controllare se si riceve di nuovo l’errore. Se lo fate, mantenete disabilitato Cloudflare e continuate la risoluzione dei problemi.
Se l’errore 520 è stato risolto, abilitare di nuovo Cloudflare.
Passo 1
Effettua il login in Cloudflare e, se avete disabilitato Cloudflare cambiando la nuvola grigia nel vostro account, iniziate col selezionare il vostro sito dalla lista.
Passo 2
Per riattivare Cloudflare, fate clic sulla scheda DNS, quindi sulla nuvola grigia.
Ripristinare Cloudflare Dopo Averlo Messo in Pausa
Passo 1
Se in precedenza avete messo in pausa Cloudflare, ripristinatelo accedendo a Cloudflare e cliccando sul vostro sito presente nell’elenco della dashboard.
Passo 2
Quindi aprite la scheda Overview e scorrete verso il basso fino in fondo alla pagina, dovre vedrete le sezioni delle Advanced Actions, nella barra laterale sul lato destro della pagina.
Fate clic sul link Enable Cloudflare on Site.
Disattivare la Modalità di Sviluppo
Passo 1
Se in precedenza avete attivato la modalità di sviluppo di Cloudflare, potete disattivarla effettuando il login. Poi cliccate sul vostro sito nell’elenco della pagina.
Passo 2
Andate alla scheda Caching.
Passo 3
Scorrete fino alla sezione Development Mode e fate clic sull’interruttore attualmente impostato su “On”.
Cosa Fare se Tutto il Resto non Funziona
Se si riscontrano ancora problemi, contattate il supporto di Cloudflare.
Fornite loro i seguenti dati:
- URL completo(i) della risorsa richiesta quando si è verificato l’errore.
- Il Ray ID di Cloudflare preso dalla pagina in cui è stato visualizzato il messaggio di errore 520.
- L’output di http://your-site.com/cdn-cgi/trace, ma attenti a sostituire “your-site.com” con il vostro effettivo nome di dominio.
- Due file HAR: uno prelevato quando avete abilitato Cloudflare sul vostro sito e un altro quando avete disabilitato Cloudflare.
Riepilogo
L’errore 520 può sembrare complesso, soprattutto perché è un errore generato da Cloudflare. Ma riguarda anche un errore del vostro server che fa sì che Cloudflare non si connetta.
I passi sopra descritti vi guidano all’individuazione delle cause più comuni dell’errore 520. Se, dopo aver provato queste procedure, avete ancora problemi, provate a contattare Cloudflare o il supporto del vostro hosting.
Lettura consigliata: Come Impostare Cloudflare APO per WordPress.