9 Tattiche per Risolvere l’Errore 504 Gateway Timeout

Pubblicato: di Luke Odom
9 Tattiche per Risolvere l’Errore 504 Gateway Timeout thumbnail

Per i proprietari di siti web WordPress, gli amministratori di siti web professionali e gli sviluppatori di siti web, ci sono molti errori comuni di WordPress da tenere a mente.

Pensare ai codici di errore può sembrare opprimente e anche un po’ pessimista. Tuttavia, noi troviamo che catalogare proattivamente il motivo per cui ciascuno si verifica e come risolverli ti fa risparmiare un sacco di tempo, denaro e cellule cerebrali nella demistificazione dello schermo vuoto o congelato davanti a te.

Dopotutto, quanto sarebbe più semplice la vita se tu apparissi con un messaggio come Errore ⒡00ⓓ: Affamato per decifrare perché sei così pungente su Slack alle 3 PM ogni giorno? (Colpevole!)

Tutti coloro che lavorano con un sito WordPress — o hanno usato internet, a dire il vero — si sono probabilmente imbattuti nell’errore 504 Gateway Timeout in qualche momento.

Quindi abbiamo messo insieme questa guida per spiegare cosa stai guardando, perché succede, molte soluzioni per risolverlo, e perché importa che quest’errore si verifichi in primo luogo.

Dai controlli di base fino alle tecniche avanzate di risoluzione dei problemi, vieni con noi mentre attraversiamo tutto ciò che il proprietario o il gestore di un sito web esperto dovrebbe sapere per risolvere l’errore 504 Gateway Timeout.

Come Identificare Un Errore di Timeout del Gateway 504

Sul browser più popolare al mondo, Google Chrome, spesso appare il familiare messaggio “Impossibile raggiungere il sito” su uno schermo quasi vuoto, con il codice di errore “HTTP ERROR 504” sotto di esso.

Tuttavia, ci sono diversi modi in cui questo errore può essere riferito su Chrome, così come su diversi browser, dispositivi, sistemi operativi, tipi di server e programmi.

"Errore 504 Gateway Time-out." finestra di dialogo del messaggio di errore con il titolo, "Il server non ha risposto in tempo."

Quindi, se vedi uno di questi messaggi, è probabile che tu stia affrontando lo stesso errore 504 Gateway Timeout di cui parliamo oggi:

  • “Errore di Timeout del Gateway”
  • “504 Gateway Time-out. Il server non ha risposto in tempo.”
  • “Timeout del Gateway (504)”
  • “Errore 504”
  • “Errore 504”
  • “Errore HTTP 504”
  • “HTTP 504”
  • “Errore HTTP 504. Timeout del Gateway.”
  • “504 Timeout del Gateway NGINX”
  • “NGINX 504 Timeout del Gateway”

E a volte, l’errore può essere meno descrittivo, omettendo il codice numerico per un riferimento al tempo, come:

  • “Questa pagina non funziona. Il dominio ha impiegato troppo tempo per rispondere.”
  • “La richiesta della pagina è stata annullata perché ci ha messo troppo tempo per completarsi”
  • “Si è verificato un problema nell’elaborazione della tua richiesta, prova di nuovo tra qualche minuto”
  • “C’è stato un timeout del gateway. Dovresti consultare il tuo registro degli errori per maggiori informazioni”

I proprietari di siti web possono persino personalizzare la pagina che viene mostrata se un utente incontra un errore 504 mentre utilizza il loro sito web, il che significa che potresti ricevere una pagina ben personalizzata che utilizza una combinazione dei codici e dei contenuti sopra menzionati.

Altre volte, potresti trovarti semplicemente a fissare uno schermo vuoto! Poiché l’errore 504 è piuttosto comune, non è una cattiva idea supporre che una pagina vuota sia dovuta a una situazione di timeout del server e applicare i passaggi che forniremo più avanti in questa guida per correggerlo.

Cosa Significa L’Errore 504 Gateway Timeout

Tecnicamente, 504 Gateway Timeout è un errore lato server da un server che funge da gateway o proxy. Significa che il server è andato in timeout mentre attendeva una risposta dal server successivo con cui doveva comunicare e quindi non ha completato l’azione che gli era stata richiesta.

Cosa significa in termini meno tecnici? (In inglese, per favore.)

Ecco come è successo. Approfondiamo un po’ di più l’intero processo.

Quando visiti un sito web, il processo tipico è che il server utilizzato dal tuo browser invia una richiesta al server che ospita il sito web che intendi visitare. Questa richiesta fa sapere al server ricevente (spesso chiamato “server a monte”) di iniziare a caricare il sito web che desideri vedere. Il tuo server è il gateway in questo caso. Il tuo server aspetta che il server a monte risponda e invii i dati. Se il server a monte non lo fa in tempo, invece del sito web di destinazione ti viene mostrato un messaggio di errore 504 Gateway Timeout.

"Gateway" e "Upstream Server" diagramma con un simbolo di orologio tra i due per indicare il tempo impiegato.

A volte l’errore si risolve da solo, ma altre volte può essere necessario accedere a diversi sistemi per implementare una soluzione.

Ora che sai cosa stai guardando, scopriamo perché lo stai vedendo.

Quali Sono Le Cause Del 504 Gateway Timeout?

Il motivo per cui l’errore 504 è così comune è che i problemi di temporizzazione del server possono verificarsi per una varietà di motivi.

Ecco molti dei problemi di base più popolari:

Interruzioni del server: I server vanno giù e rallentano tutto il tempo per vari motivi: aumento del traffico, manutenzione, guasto hardware, ecc. Se uno dei server di cui hai bisogno per caricare un sito web è inattivo, è probabile che tu veda un errore a causa di problemi di tempistica.

Limitazioni delle risorse: Se il tuo sito web sta ricevendo più traffico, anche se questo traffico proviene da fonti legittime, potrebbe essere superiore a quello che la tua configurazione attuale è pronta a gestire.

Altre interruzioni più generali: Ci sono molte altre cose oltre all’uptime del server che possono andare storte durante il caricamento dei siti web. I router possono smettere di funzionare, i dispositivi possono avere problemi, e così via. Qualsiasi di queste situazioni può interrompere la connessione server-to-server e metterti nella prigione del 504.

Problemi con i server proxy: I server proxy possono aggiungere un ulteriore strato di sicurezza, ma a volte possono interrompere il flusso di comunicazione tra il gateway e i server a monte.

Confusione del Firewall: I firewall, soprattutto quelli con misure di sicurezza extra o configurazioni personalizzate, possono bloccare per errore alcune connessioni, credendo che si tratti di un attacco. Questo può succedere più frequentemente se stai utilizzando un firewall per limitare determinati fornitori di servizi internet (ISP) o reti di distribuzione dei contenuti (CDN).

Problemi DNS: A volte, i server del sistema di nomi di dominio (DNS) non riescono a corrispondere il nome di dominio corretto all’indirizzo IP giusto. Questo può essere causato da recenti cambiamenti di IP, informazioni DNS obsolete memorizzate nella cache, o da una configurazione DNS errata.

DNS

Il protocollo Domain Name System (DNS) conserva i record di quali nomi di dominio corrispondono a specifici indirizzi IP. DNS ti permette di navigare sul web digitando URL comuni invece di indirizzi IP.

Leggi di più

Errori nel codice del sito web: Un errore nel codice del tuo sito web può causare una comunicazione imprecisa tra il tuo server o i server a monte, portando a un timeout quando non riescono a risolvere l’incomprensione.

Limitazioni dei worker PHP: In WordPress, i worker PHP sono processi che aiutano a fornire il contenuto del tuo sito web ai visitatori. Se non ne hai abbastanza per gestire il traffico, un server potrebbe dover ‘mettersi in fila’ prima che la sua richiesta possa essere evasa, il che probabilmente causerà un timeout del server.

PHP

PHP (Hypertext Preprocessor) è un linguaggio di scripting open-source. È ampiamente utilizzato nello sviluppo web e può essere incorporato in HTML. Diversi CMS (Sistema di gestione dei contenuti) popolari, come WordPress, sono costruiti con PHP.

Leggi di più

Perché Risolvere L’Errore 504 Gateway Timeout?

OK, ora una considerazione molto importante prima di iniziare a lavorare sulla risoluzione degli errori di timeout: perché preoccuparsi di correggere l’errore 504?

Ci sono davvero due motivi fondamentali per cui preoccuparsi qui: l’esperienza utente e il SEO.

Qualsiasi errore HTTP 500 impedisce il caricamento di un sito web. Questa è probabilmente l’esperienza peggiore che puoi creare per un visitatore del tuo sito web — soprattutto per i visitatori alla prima visita che sono stati indirizzati al tuo sito web o che ci sono arrivati da un annuncio, poiché può lasciare un’impressione negativa che li impedisce di tornare mai più. Questo è un problema non solo per il tuo ego e il tuo marchio, ma anche per le tue vendite e la fidelizzazione.

Poi, c’è l’ottimizzazione per i motori di ricerca (SEO) da considerare.

SEO

Search Engine Optimization (SEO) è la pratica di migliorare il posizionamento di un sito nei risultati di ricerca. I risultati di ricerca sono aggregati in base a numerosi fattori, inclusi la rilevanza e la qualità di un sito. Ottimizzare il tuo sito per questi fattori può aiutare ad aumentare i tuoi posizionamenti.

Leggi di più

Se un motore di ricerca tenta di indicizzare (in pratica, leggere e categorizzare il tuo sito web per capire per quali ricerche mostrarlo) il tuo sito web e scopre che il caricamento è lento o interrotto a causa di un errore 504 Gateway Timeout, ciò può danneggiare seriamente il modo in cui decide di posizionare il tuo sito web nei risultati di ricerca.

Quanto più in basso appare il tuo sito web in una pagina di risultati di un motore di ricerca (SERP), tanto meno è probabile che le persone clicchino su di esso, e se gli indicizzatori dei motori di ricerca incontrano frequentemente errori di caricamento, potrebbero smettere di indicizzare del tutto il tuo sito web. Il risultato? La rimozione completa dai risultati di ricerca.

In un’epoca in cui i clic sono valuta, errori 504 irrisolti e ripetitivi possono seriamente rallentarti.

Come Risolvere L’Errore 504 Gateway Timeout (9 Possibilità)

Intimidito? Non esserlo. Se il tuo sito web segnala un errore 504 Gateway Timeout, ecco cosa devi sapere per risolverlo.

1. Aggiorna Il Sito

No, davvero. Potrebbe essere così semplice!

In caso di interruzioni della connettività, problemi ai dispositivi, sovraccarico di traffico e manutenzione, è probabilmente solo una questione di tempismo sfortunato. Aspetta un minuto e aggiorna il tuo sito per vedere se i problemi sono stati risolti e il tuo sito è di nuovo accessibile come sempre.

Ecco come:

  • Google Chrome su Mac: Premi Command + R
  • Google Chrome su Windows: Usa Ctrl + R
  • Safari (attualmente supportato solo su Mac): Command + R
  • Microsoft Edge su Windows: CTRL+R
  • Microsoft Edge su Mac: Command + Shift + R
"Scorciatoie da Tastiera per Aggiornare il Sito" diagramma con comandi per Google Chrome, Safari e Microsoft Edge.

2. Cambia/Riavvia Dispositivi e Browser

Problemi hardware, cache obsolete e altri piccoli problemi possono interrompere la connessione al server e causare un errore legato al timeout.

Prova a riavviare e anche a cambiare i dispositivi e/o i browser su cui stai lavorando per vedere se il tuo sito si carica. Potresti anche voler riavviare il modem o il router. Questo potrebbe risolvere tutto. Oppure, se scopri che il tuo sito funziona in alcuni posti ma non in altri, potrebbe almeno aiutarti a restringere il campo di ciò che sta succedendo.

Per riavviare la maggior parte delle macchine desktop moderne su MacOS, vai al menu Apple (in alto a sinistra) > Riavvia. Per un computer con Windows, dovresti fare qualcosa come navigare fino a Start nella barra delle applicazioni, selezionare l’icona dell’alimentazione e poi Riavvia nella schermata successiva.

Anche se non puoi di solito aprire e riparare l’hardware che sta dando problemi, potresti essere in grado di risolvere perché alcuni browser vanno in timeout mentre altri funzionano perfettamente. Ne parleremo nel prossimo paragrafo.

Ricevi contenuti direttamente nella tua casella di posta

Iscriviti ora per ricevere tutti gli ultimi aggiornamenti direttamente nella tua casella di posta.

3. Svuota La Cache Del Browser

I browser spesso memorizzano localmente (sul tuo dispositivo) le informazioni dei siti web per ridurre i tempi di caricamento. Quando i dati memorizzati diventano obsoleti, possono causare problemi di connettività.

Per svuotare la cache del browser in Google Chrome, clicca sui tre puntini verticali nell’angolo in alto a destra per aprire il menu di Chrome. Visita Altri Strumenti > Elimina Dati di Navigazione.

Finestra di dialogo che mostra come "Svuotare i Dati di Navigazione" accedendo a "Altri Strumenti"

Qui, potrai selezionare cosa vuoi cancellare e in quale arco di tempo. Assicurati solo di premere il pulsante Elimina dati per completare la tua missione. Ricorda che questo può apparire diverso a seconda del tuo dispositivo e sistema operativo.

"Finestra di dialogo "Cancella dati di navigazione" con le caselle "Cookie e altri dati dei siti" e "Immagini e file memorizzati nella cache" selezionate.

Per Safari, seleziona Safari nell’angolo superiore sinistro, poi > Cancella Cronologia > Tutta la Cronologia > pulsante Cancella Cronologia.

Per svuotare la cache del browser su Microsoft Edge, è sufficiente inserire “edge://settings/clearbrowserdata” nella barra degli indirizzi e selezionare cosa vuoi eliminare e per quale intervallo di tempo.

Tieni presente che questi processi possono apparire diversi a seconda del tuo dispositivo e della versione del sistema operativo che stai utilizzando.

4. Considera Le Modifiche DNS E La Cache

Se tu o il tuo provider di hosting avete cambiato il server DNS del tuo sito web a causa dell’adozione di un nuovo indirizzo IP o di un completamente nuovo host di siti web WordPress, questi cambiamenti possono richiedere tempo per diventare attivi e perché tutto torni a funzionare perfettamente insieme. Possono essere necessarie fino a 48 ore per completare la piena propagazione.

Tuttavia, se non ci sono stati cambiamenti di cui sei a conoscenza, o se è passato molto tempo dal periodo di attesa, potrebbe trattarsi di un altro problema di cache, questa volta a livello di DNS.

Svuotare la tua cache DNS indurrà il dispositivo che stai utilizzando a richiedere informazioni aggiornate dal server DNS sui siti web, quindi non tenterà più di connettersi utilizzando informazioni DNS obsolete.

Ecco come:

Windows:

  • Premi Win + R e digita ipconfig /flushdns
  • Premi Ctrl + Shift + Enter per eseguire il prompt dei comandi
  • Dovresti vedere un messaggio di successo al termine

Mac:

  • Assicurati di utilizzare il sistema operativo più recente
  • Apri il Terminal e digita sudo killall -HUP mDNSResponder (Il sistema operativo che stai utilizzando può influenzare il successo di questo comando, quindi se non sembra funzionare potresti dover cercare “flush DNS cache mac OS [inserisci qui la tua versione]”)
  • Premi Invio
  • Inserisci la tua password di amministratore se richiesto, poi premi nuovamente Invio per eseguire il comando.
    Nota: Probabilmente non vedrai un messaggio di successo dopo questo. Il comando dovrebbe semplicemente essere eseguito.

Google Chrome (Sì, ha la sua propria cache DNS!)

  • Inserisci “chrome://net-internals/#dns” nella barra degli indirizzi di Chrome e premi Invio
  • Clicca sul pulsante Svuota cache host nella schermata successiva

5. Disabilita Il CDN

Se non hai ancora risolto, il problema potrebbe essere la tua rete di distribuzione dei contenuti. E puoi scoprire se è il colpevole disattivandola temporaneamente e vedendo se ciò aiuta.

Se stai utilizzando un plugin CDN di WordPress e puoi accedere ai tuoi plugin, semplicemente disattivalo e poi testa se il tuo sito si carica. (Accedi a questo tramite WordPress Dashboard > Plugins.)

Tuttavia, se non riesci ad accedere all’amministrazione di WordPress a causa dell’errore di timeout 504, puoi accedere al tuo sito tramite il gestore di file del tuo host o il protocollo di trasferimento file sicuro (SFTP). Ecco come si fa per gli utenti DreamHost.

Una volta che ti trovi nella directory del tuo sito, naviga verso il nome del tuo sito poi wp-content > plugins > il file del tuo plugin CDN. Rinomina quel file (qualcosa come nome_file_DIS), salva le modifiche e aggiorna il tuo sito per vedere se ha funzionato.

Quando questo esperimento sarà finito, assicurati di ripristinare il nome originale della cartella e di salvarla nuovamente affinché il plugin possa funzionare. Potresti anche voler visitare la sezione dei plugin del tuo amministratore WordPress per assicurarti che sia attivo e funzionante.

Anche se questo non risolverà il problema, ti permetterà di sapere se il tuo CDN ha dei problemi, da cui potrai scegliere di passare a un diverso fornitore se ha senso.

6. Verifica i Plugin WordPress

Perché i Plugin WordPress sono piccoli pacchetti di codice indipendenti che si integrano con la tua istanza WordPress, se presentano errori possono interrompere la connessione al server e generare un errore 504.

Per scoprire se è questo il caso, il processo è molto simile a quello che abbiamo fatto sopra.

Prima di tutto, se riesci ad accedere al tuo amministratore di WordPress, vai alla pagina dei Plugins e disattiva tutto. Quindi, riattiva ciascuno singolarmente e aggiorna il tuo sito per vedere se si carica senza problemi. Quando individui il colpevole, puoi disattivarlo e cercare una versione più recente o un’alternativa.

Scheda Plugins selezionata con l'opzione per "Disattivare" annotata e applicata a tutti gli elementi nell'elenco sottostante.

Se non riesci ad accedere alla dashboard, dovrai aprirla tramite il file manager del tuo host o una piattaforma SFTP.

Nella directory, naviga fino a nome del tuo sito web > wp-content > plugins. Ora rinomina l’intero file (come plugins_OFF), salva e ricarica. Se funziona, sai che il problema è nei tuoi plugin. Ora dovresti essere in grado di accedere alla tua amministrazione WP, navigare nei tuoi plugin e riattivarli uno per uno per vedere quale rallenta il tempo di caricamento del tuo sito web.

7. Disattiva Il Tuo Firewall

Simboli del firewall di Mac e Windows con un pulsante scorrevole impostato su "OFF."

Per disattivare temporaneamente il tuo firewall e vedere se le sue impostazioni sono la causa dell’errore 504, segui questi passaggi:

Windows:

  • Menu Start > Impostazioni > Privacy e sicurezza > Sicurezza di Windows > Protezione firewall e rete
  • Scegli il tuo profilo di rete
  • Trova Firewall di Microsoft Defender e disattivalo

Mac:

  • Menu Apple > Preferenze di sistema > Sicurezza e Privacy > Firewall (in alto nella finestra)
  • Seleziona il pulsante per attivare il firewall
  • Potresti dover sbloccare questa pagina usando la tua password per apportare modifiche

(Nota: Ti consigliamo di riattivare il tuo firewall! Se provoca errori di gateway, una volta riattivato, puoi dedicare del tempo a esaminare le sue configurazioni per migliorare le prestazioni.)

8. Modifica Le Impostazioni Del Server Web

Per gli utenti più avanzati tecnicamente, modificare le impostazioni su Apache e NGINX può aiutare a ridurre o addirittura eliminare gli errori 504.

Ecco come:

Apache

  • Trova il tuo file di configurazione Apache (httpd.conf o apache2.conf)
  • Aprilo con un editor di testi
  • Modifica Timeout aumentando il valore predefinito a 60 secondi. Quindi, se desideri impostarlo a 500 secondi, usa Timeout 500
  • Salva ed esci dall’editor
  • Ora, apri e modifica il file php.ini aumentando max_execution_time dal valore predefinito di 30 secondi a qualcosa come 400 secondi usando max_execution_time = 400
  • Salva e riavvia Apache per rendere effettivi gli aumenti di tempo usando sudo service apache2 restart

NGINX

  • Trova il file di configurazione di NGINX (spesso /etc/nginx/nginx.conf)
  • Per NGINX + FastCGI Process Manager o quando si usa NGINX come reverse proxy per Apache, ecco tutti i posti dove andrai ad aumentare i valori predefiniti (useremo di nuovo 500 e 400 secondi):
    • proxy_connect_timeout 500;
    • proxy_send_timeout 500;
    • proxy_read_timeout 500;
    • send_timeout 500;
    • fastcgi_read_timeout 400;
  • Ricarica il server NGINX: sudo service nginx reload
  • Modifica il file di configurazione del pool PHP-FPM (/etc/php/[version]/fpm/pool.d/www.conf — sostituisci [version] con la tua versione)
  • Imposta: request_terminate_timeout = 400
  • Nel file php.ini, imposta: max_execution_time = 400
  • Ricarica PHP-FPM e NGINX usando sudo service php[version]-fpm reload && sudo service nginx reload

Speriamo che quello sia la fine di quelle impostazioni sensibili del timeout del server!

9. Rivolgiti al Tuo Host per Supporto

Se stai alzando le mani al cielo e non sai più cosa fare, dovresti sempre poter contattare l’host del tuo sito web WordPress per un supporto rapido e affidabile.

Oltre a risolvere problemi e fornire assistenza, possono anche eseguire rapidamente alcune operazioni che tendono a eliminare gli errori 504, come aumentare i lavoratori PHP, o aggiornarti a un server con più o migliori risorse per gestire problemi legati al traffico.

Che cosa sentiamo? Se non stai lavorando con una compagnia di hosting che è felice di fare tutto il possibile per assicurarsi che il tuo sito web funzioni bene sia per gli utenti che per i motori di ricerca, è ora di cercarne una nuova.

Da DreamHost, non ci limitiamo ad aiutare i proprietari, i gestori e i costruttori di siti web con gli errori comuni — siamo fanatici della piattaforma WordPress nel suo insieme!

Ecco perché offriamo DreamPress, un pacchetto che abbiamo sviluppato specificamente per clienti che desiderano un sito web WordPress senza problemi, aggiornato e ad alte prestazioni.

E, per un’esperienza completamente assistita, il nostro dipartimento di servizi professionali può occuparsi dello sviluppo del sito web e della gestione per te.

Se vuoi immergerti nei dettagli con noi o semplicemente raccogliere i benefici di un sito WordPress di successo senza sporcarti le mani, DreamHost può creare il piano di hosting e supporto perfetto per te.

Prenota una consulenza gratuita con il nostro team di servizi professionali e inizia a pianificare il futuro del tuo sito web oggi stesso!

Ricevi contenuti direttamente nella tua casella di posta

Iscriviti ora per ricevere tutti gli ultimi aggiornamenti direttamente nella tua casella di posta.