Come risolvere l’errore HTTP 503 service unavailable in WordPress

Pubblicato in data 22 Settembre 2019 Categoria Consigli WordPress

Errore http 503

Pensiamo sarai d’accordo se diciamo: l’errore HTTP 503 service unavailable è uno degli errori più sconcertanti che tu possa mai incontrare sul tuo sito WordPress.

Esempio di errore http 503 service unavailable

Il motivo principale è perchè l’errore http 503 non chiarisce cosa c’è che non va nel tuo sito e il fatto che possa essere causato da una serie di eventi diversi peggiora oltremodo la situazione. Inoltre, a seconda della configurazione del server, questo errore può essere visualizzato in modi diverso. Potresti ad esempio ricevere i seguenti codici di errore:

503 Service Unavailable
Http/1.1 Service Unavailable
HTTP Server Error 503
503 Error
HTTP 503
HTTP Error 503

Correggere un errore HTTP 503 è relativamente facile e in questo post ti mostriamo esattamente come fare.

Nota : in questo tutorial, mostreremo come attivare il debug e correggere l’errore per i siti web basati su WordPress ma i passaggi simili possono essere applicati a qualsiasi altro CMS.

 

Cause dell’errore HTTP 503 service unavailable in WordPress

L’error 503 service unavailable può essere causato da una serie di cose (ma non limitato a) tra cui:

  • – Plugin o temi con errori
  • – Uno script PHP personalizzato che si comporta male
  • – Risorse del server insufficienti
  • – Problemi del server
  • – Attacchi dannosi come il famigerato attacco DDoS (Distributed Denial of Service)

Esamineremo ciascuna di queste cause e offriremo varie soluzioni su come risolvere l’errore ‘503 service unavailable error’.

Causa dell’errore HTTP 503 : plugin difettosi

Plugin difettosi sono responsabili della maggior parte degli errori che riscontrerai in WordPress. In effetti, un errore plugin difettoso è la causa principale dell’errore HTTP 503 service unavailable in WordPress.

Se hai riscontrato l’errore HTTP 503 dopo l’installazione o l’aggiornamento di un determinato plugin, sicuramente conosci il colpevole. Tutto quello che devi fare è cancellare il plugin in questione e il lavoro è fatto.

Se invece non hai idea di quale plugin (o cosa esattamente) sta causando l’errore HTTP 503, dovresti iniziare la diagnosi disattivando tutti i plugin.

Ma come si disattivano tutti i plugin considerando che non è possibile accedere alla dashboard di amministrazione di WordPress?

Disattivazione di tutti i plugin di WordPress

Accedi alla tua directory di WordPress tramite FTP o File Manager del CPanel Per questo tutorial, useremo il programma FTP FileZilla :

Directory principale di WordPress in FileZilla

Ecco come appare la nostra directory di test WordPress tramite File Manager in CPanel:

Visualizzazione della home directory di WordPress nel file manager CPanel

All’interno della directory di WordPress, individua e apri la cartella wp-content , che contiene, tra le altre cose, plugin, temi e contenuti multimediali.

Fai clic con il pulsante destro del mouse sulla cartella dei plugin e rinominala in plugin-old :

rinominare la cartella plugin di WordPress con filezilla

Questo disattiva tutti i plugin contemporaneamente. Ora rinomina i plugin-old di nuovo in plugin e ricarica il tuo sito web. Se l’error 503 scompare, un errore plugin è la causa della tua situazione attuale.

Tutto quello che devi fare ora è identificare ed eliminare il plugin che genera l’errore.

Ora dovresti essere in grado di accedere alla dashboard di amministrazione di WordPress tramite il browser e attivare i plugin uno per uno.

Ogni volta che attivi un plugin, ricarica il tuo sito per individuare il plugin errato. Una volta trovato il plugin difettoso, accedi alla cartella dei plugin via FTP ed eliminalo:

Elimina il plugin WordPress difettoso per correggere l'errore http 503 service unavailable

Se la disattivazione dei plugin non ha risolto l’errore 503 service unavailable, continua a leggere per ulteriori soluzioni. Ora, controlliamo se il problema è il tuo tema.

 

Causa dell’errore HTTP 503 : tema WordPress con problemi

A volte, lo script PHP che genera l’ errore HTTP 503 potrebbe far parte del tema che stai utilizzando. Per questa parte, passeremo a un tema predefinito come Twenty Seventeen. A proposito, è consigliabile mantenere uno dei temi predefiniti anche dopo aver installato ed attivato un nuovo tema poiché funge (il tema predefinito) da tema di fallback se quello da te utilizzato dovesse generare problemi..

Disattiva il tema WordPress

Prima di disattivare (o eliminare il tema in caso di problemi) dobbiamo creare un backup dello stesso. Collegati al tuo sito WordPress tramite FTP e vai alla cartella contenuto wp-content -> temi .

Individua il tema attivo e scaricalo come mostrato di seguito:

Scarica il tema WordPress con FileZilla

Quindi, elimina il tema attivo e ricarica il tuo sito. Se l’errore HTTP 503 è sparito, è necessario correggere / aggiornare il tema. In caso contrario, ottieni una nuova copia del tema o opta per un tema diverso.

Se l’errore 503 service unavailable persiste, forse il responsabile è uno snippet di codice PHP personalizzato non funzionante da qualche parte nel tuo sito.

 

Causa dell’errore HTTP 503 : codice PHP personalizzato difettoso

A volte, il codice di terze parti da servizi esterni o snippet di codice aggiunti al tuo sito potrebbe essere la causa dell’ errore HTTP 503. Ma come si capisce se il problema è il codice?

Quando il sito funziona ed è possibile accedere alla dashboard, puoi utilizzare un plugin di debug come Query Monitor e Debug Bar , altrimenti dovrai abilitare la modalità debug di WordPress.

Abilita la modalità WP_DEBUG

Per abilitare la modalità debug in WordPress e scrivere gli errori in un file di registro, attenersi alla seguente procedura:

  1. Apri la tua directory di WordPress tramite FTP o File Manager.
  2. Apri il file wp-config.php
  3. Scorri verso il basso fino a dove è definito WP_DEBUG . Se manca, lo aggiungeremo appena sopra la riga che dice /*That’s all, stop editing! Happy blogging.*/ /*That’s all, stop editing! Happy blogging.*/
  4. Inserisci i codici di DEBUG. Basta cambiare il codice  define (‘WP_DEBUG’, false); in
define ('WP_DEBUG', true);
define ('WP_DEBUG_LOG', true);
define ('WP_DEBUG_DISPLAY', false);
@ini_set ('display_errors', 0);

Salva le modifiche:

Abilita il debug in wp-config.php

Ora ricarica il tuo sito per provocare l’errore. Quindi, individua il file debug.log nella cartella wp-content nella directory di WordPress.

Questo file contiene tutti gli errori sul tuo sito web. Se l’errore 503 service unavailable è causato da uno snippet di codice personalizzato, verrà visualizzato da qualche parte con i dettagli dell’errore.

Elimina / sostituisci il codice che genera l’errore e ricarica il tuo sito. Se l’error 503 persiste, il problema potrebbe risiedere nel tuo server web.

 

Causa dell’errore HTTP 503 : Problemi relativi al server

Pproblemi relativi al server possono causare l’errore HTTP 503 service unavailable. Solitamente gli errori HTTP 503 causati da problemi del server scompaiono automaticamente dopo alcuni minuti.

Se l’errore persiste dopo aver provato le soluzioni che abbiamo già trattato, ecco un paio di soluzioni che puoi provare.

Aumentare le risorse del server

Alcuni piani di hosting condiviso semplicemente non hanno abbastanza potenza per adattarsi a un uso intenso. Se il tuo host ha colli di bottiglia per quanto riguarda le risorse del server, forse è tempo di passare a un nuovo servizio di hosting WordPress o effettuare un’upgrade del tuo pacchetto di hosting.

Stai ricevendo l’errore 503 service unavailable in modo costante? In tal caso, controlla Google Analytics. Se ricevi più traffico del solito, sei decisamente a corto di risorse del server.

Tuttavia, se non hai traffico aggiuntivo ma visualizzi ancora l’errore HTP 503, il problema non deriva da RAM o memoria del server inadeguate.

Limita WordPress Heartbeat

Secondo WordPress.org, “ … l’API Heartbeat è un’API di polling del server di esempio integrata in WordPress, che consente aggiornamenti frontend quasi in tempo reale. ” È responsabile di funzionalità come il salvataggio automatico di post e così via.

L’API Heartbeat di WordPress utilizza file noto come admin-ajax.php tra le altre query a intervalli regolari quando si accede al proprio sito.

Questa funzionalità consuma le risorse del tuo server, ma puoi limitarla o disabilitarla completamente. Quando ripristini il tuo sito, puoi utilizzare il plugin WorordPress Heartbeat Control per limitare questa funzionalità invece di disabilitarla completamente.

Per determinare se WordPress Heartbeat è la causa dell’errore HTTP 503 sul tuo sito WordPress, aggiungi il seguente codice nel file delle function.php del tuo tema subito dopo il tag <?php :

add_action( 'init', 'stop_heartbeat', 1 );
function stop_heartbeat() {
wp_deregister_script('heartbeat');
}

Salva le modifiche e ricarica il tuo sito. Se l’errore 503 scompare, fai un bel respiro, in caso contrario l’API Heartbeat di WordPress non è il problema.

Se il codice non ha risolto l’errore HTTP 503, non dimenticare di rimuoverlo dal tuo file Functions.php.