Risoluzione del “White Screen of Death” in WordPress

Pubblicato: di Jos Velasco
Risoluzione del “White Screen of Death” in WordPress thumbnail

Se stai leggendo questo, è troppo tardi.

(No, sto scherzando. Questo è un mixtape di Drake del 2015.)

Se stai leggendo questo, probabilmente hai appena provato a visitare il tuo sito web WordPress e sei stato accolto da un messaggio minaccioso.

“Si è verificato un errore critico su questo sito web.”

Messaggio di errore critico

Gulp.

Ma va bene. Possiamo risolverlo.

Primo passo: Non allarmarti.

Quello che hai riscontrato è il “messaggio di errore critico”.

(O, l’artista precedentemente noto come la Schermata Bianca della Morte, conosciuta anche come WSoD.)

Questo è uno degli errori di WordPress più comuni, e anche se questa etichetta sembra intimidatoria, la realtà non è così terrificante come potresti immaginare.

Per molti anni, i siti WordPress che riscontravano questo problema venivano semplicemente accolti da una schermata completamente bianca.

Schermata completamente bianca di WordPress

(Non è stato molto utile.)

Ma, dalla versione 5.2 di WordPress, appare un messaggio di errore che ti informa quando le cose non vanno bene e ti dà un’idea di come risolvere il problema.

In questa guida, approfondiremo le ragioni per cui si verifica il messaggio di errore critico e come affrontarlo quando accade.

Festeggiamo!

Cos’è Un Errore Critico di WordPress?

L’errore critico leggendario o WSoD può verificarsi quando certe cose vanno male con WordPress.

Di solito, vedrai il messaggio sopra (o, in alcuni casi, lo schermo bianco) quando tenti di accedere al frontend del tuo sito. In alcuni casi, vedrai lo stesso risultato quando tenti di accedere al pannello di amministrazione di WordPress (“wp-admin”), rendendo l’errore particolarmente spaventoso per chi lo sperimenta per la prima volta.

Non preoccuparti, il tuo sito è ancora lì.  Devi solo risolvere l’errore per farlo tornare in vita.

Prima di arrivare a questo, cosa causa l’errore critico in primo luogo?

Il problema deriva spesso da un problema con il PHP del tuo sito, che è il linguaggio di programmazione su cui si basa WordPress.

PHP

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

Leggi di più

L’errore è solitamente causato da:

  • Codice difettoso aggiunto al tuo sito web
  • Conflitti tra plugin
  • Problemi di versione PHP/limitazioni di memoria

Stiamo per aiutarti a capire quale problema sta causando il tuo caso e come puoi risolverlo. Probabilmente imparerai molto su WordPress lungo il cammino.

Ripristino Da Un Backup

Il modo più rapido e semplice per risolvere il problema dell’errore critico è semplicemente ripristinare il tuo sito web a una versione precedente.

Nella maggior parte dei casi, il problema è stato causato da una modifica apportata a WordPress.

Ad esempio, se hai recentemente installato un nuovo plugin, aggiunto del codice al tuo sito o apportato modifiche ai file del tema del tuo sito.

Prima di immergerci su come risolvere questi problemi, considera il ripristino di una copia di backup del tuo sito web.

Molti provider di Hosting WordPress offrono servizi di backup gestiti.

Se è così, tutto quello che devi fare è accedere al tuo account di hosting e trovare dove sono memorizzati i backup. Cerca un backup che è stato creato prima che iniziassero gli errori.

 

A volte questa potrebbe non essere un’opzione — Forse il tuo fornitore di hosting non offre backup, oppure potresti aver apportato recentemente molte modifiche al tuo sito o aggiunto molto contenuto che non vuoi perdere.

Se è così, allora dobbiamo approfondire per risolvere il problema in un altro modo.

(È importante notare che se ripristini una versione precedente del tuo sito, probabilmente perderai tutti i cambiamenti apportati al sito tra ora e quando è stato creato il backup. Questo include nuovi post o pagine, immagini caricate e qualsiasi altro aggiornamento effettuato durante quel periodo.)

Ricevi contenuti direttamente nella tua casella di posta

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

Soluzioni Rapide Per Il Problema Dell’Errore Critico

Iniziamo con alcuni interventi facili per prima cosa.

Leggi L’Email Da WordPress (Se Applicabile)

Miglior caso possibile: Una volta che questo errore viene attivato sul tuo sito, potresti ricevere un’email da WordPress inviata all’indirizzo email dell’amministratore.

L’errore che vedi dirà qualcosa del tipo:

Messaggio di errore critico

Se controlli la tua email, dovresti ricevere una notifica riguardo l’errore e alcuni dettagli sulla risoluzione dei problemi.

Segui le istruzioni dell’email e vedi se risolve il problema.

In alcuni casi, vedrai solo una schermata bianca o riceverai un messaggio di errore senza alcuna menzione di una email in arrivo.

Se questo è il caso, segui i prossimi passi per risolvere il problema in un altro modo.

Prova a Usare la Modalità di Recupero

In alcuni casi, l’email che ricevi da WordPress ti inviterà ad avviare una funzione speciale chiamata Modalità di Recupero.

Questo ti permetterà di recuperare l’accesso al tuo pannello di amministrazione WP per risolvere gli errori, ma è importante sottolineare che questo non risolverà il problema. Invece, ti consentirà semplicemente di accedere al pannello di amministrazione WP per disabilitare i plugin o correggere eventuali errori di codice senza dover ricorrere all’accesso FTP/SFTP.

Anche se non hai ricevuto un’email con le istruzioni o le istruzioni non hanno funzionato, puoi comunque provare a usare la Modalità di Recupero manualmente.

Per accedere al tuo sito tramite la Modalità di Recupero, visita semplicemente questo URL:

yoursite.com/wp-login.php?action=entered_recovery_mode

Da lì, ti verrà mostrata una schermata di accesso di WordPress dove potrai inserire il tuo nome utente e la tua password.

Immergiti e annulla qualsiasi modifica, ripristina i tuoi temi, plugin o qualsiasi altra cosa che possa aver causato il problema.

Annulla L’Ultima Azione Eseguita Sul Tuo Sito Web

Aggiungere una riga di codice o incollare uno script PHP preso da internet potrebbe danneggiare il tuo sito.

Se hai modificato il tuo sito WordPress poco prima che si verificasse il problema, l’opzione più semplice potrebbe essere rimuovere o annullare manualmente quella modifica al sito.

Se puoi accedere al pannello di amministrazione WP:

Accedi al tuo backend di WordPress e prova a rimuovere o ripristinare la modifica che hai recentemente effettuato.

Ad esempio, se hai aggiunto del codice da un tutorial online, prova a eliminare quel codice dai tuoi file del tema e vedi se risolve il problema.

Se hai recentemente installato o aggiornato un plugin, prova a disattivarlo.

I plugin sono spesso i principali colpevoli dietro l’errore WSoD, quindi se di recente hai modificato uno, la tua prima azione dovrebbe essere quella di disattivarlo. Se ricarichi il sito e tutto torna alla normalità, hai trovato la fonte del tuo problema! Dovresti quindi contattare lo sviluppatore del plugin o aprire un ticket nel suo forum di supporto per ulteriore assistenza.

Se non sei sicuro di quale plugin possa essere il problema, puoi disattivare tutti i tuoi plugin contemporaneamente andando nella schermata Plugin nel tuo dashboard WordPress e utilizzando l’opzione Disattiva nel menu a discesa delle Azioni collettive.

Schermata dei Plugin, opzione Disattiva

Se non riesci ad accedere all’area di amministrazione WP:

Dovrai apportare queste modifiche accedendo al server web del tuo sito tramite client SFTP/FTP o utilizzando il gestore file del tuo host.

Una volta ottenuto l’accesso al tuo sito, naviga nella directory principale di WordPress. (Solitamente denominata “wordpress” o qualcosa come “home,” “html,” o “www.”)

Trova la cartella wp-content.

cartella wp-content

Da lì, dovrai apportare le modifiche direttamente nel file rilevante.

Ad esempio, diciamo che hai cambiato il file del tema del tuo sito, il che ha causato un errore.

Naviga in wp-content > themes > nome-del-tuo-tema. Poi, trova il file che hai modificato (ad esempio, “header.php”). Apri il file.

Puoi modificarlo usando un editor di testo desktop come Notepad o un IDE come Sublime Text. Rimuovi il codice che hai aggiunto e salva il file.

Un’altra situazione potrebbe essere che hai installato un nuovo plugin, il quale ha causato l’errore.

In tal caso, naviga nella cartella /wp_content/plugins.

Trova la cartella del plugin rilevante. Ora, rinomina la cartella in un nome diverso da quello attuale. Ad esempio, cambia il nome da “simple-plugin” a “simple-plugin.renamed”.

Questo disattiverà il plugin e dovrebbe risolvere il problema.

Cambia Il Tuo Tema

Proprio come i plugin possono contenere codice obsoleto o errato, anche i temi possono farlo. Alcuni temi possono essere codificati in modo improprio o causare un conflitto con uno o più dei tuoi plugin. Potrebbe esserci stato anche un problema con l’installazione o l’aggiornamento del tema che lo ha lasciato incompleto. Infine, se hai apportato modifiche al file functions.php del tema, anche questo può causare un errore.

Fortunatamente, verificare se il tuo tema è la causa del WSoD è semplice. Tutto quello che devi fare è disabilitarlo e tornare a un tema generico.

Se hai accesso alla dashboard dell’amministratore:

Vai su Aspetto > Temi. Passa il mouse su uno dei temi predefiniti di WordPress, come il Twenty Twenty-Three, e clicca su Attiva.

Attiva Tema

Se la dashboard dell’amministratore non è disponibile, puoi farlo anche utilizzando SFTP/FTP o il Gestore File.

Apri la cartella /wp_content/themes e rinomina semplicemente la cartella del tema che stai attualmente utilizzando. (Ad esempio, cambia il nome della cartella da “current-theme” a “current-theme_test.”)

cartella wp_content_themes

Questo causerà la disattivazione del tuo tema da parte di WordPress e applicherà automaticamente il tema predefinito. Ora puoi controllare il tuo sito per vedere se l’errore fatale è scomparso.

Se questo metodo risolve il problema, sai che il tuo tema era la causa dell’errore. Se hai apportato modifiche recenti al tema, dovresti provare a rimuovere queste modifiche o eliminare il tema e reinstallare la versione originale. Se ciò non risolve il problema, vorrai fare riferimento alla documentazione ufficiale del tema o contattare lo sviluppatore per ulteriore assistenza.

Abilita La Modalità Debug Per Diagnosticare Il Problema

Se sei arrivato fin qui senza trovare la soluzione ai tuoi problemi o hai diagnosticato il problema ma hai ancora bisogno di un modo per risolverlo, beh, è il momento di smetterla di essere gentile.

Incontra: modalità debug di WordPress.

Questo è uno strumento integrato in tutte le installazioni di WordPress. Normalmente, questo è disattivato perché è destinato esclusivamente a scopi di test, ma puoi attivarlo in qualsiasi momento.

Attivare la modalità debug ti permette di creare un registro degli errori di tutto ciò che avviene quando il tuo sito tenta di caricarsi. Puoi anche scegliere di visualizzare queste informazioni direttamente sulla pagina.

Si raccomanda di farlo su una versione di test o staging del tuo sito, poiché le informazioni raccolte dalla modalità debug possono essere sensibili. Ad esempio, potrebbero contenere informazioni personali o evidenziare falle di sicurezza.

Per attivare la modalità debug, dovrai modificare il file wp-config.php del tuo sito. Questo file è un blocco di costruzione estremamente importante per il tuo sito, poiché contiene tutte le informazioni del tuo database (compreso le tue password). Dovresti quindi consultare la documentazione ufficiale prima di iniziare a modificarlo.

Quando sei pronto per iniziare il debugging, accedi al tuo sito tramite SFTP, SSH o il gestore file del tuo host. (Vedi l’Opzione 2 per maggiori dettagli.)

Naviga nella directory radice della tua installazione di WordPress. (Questa dovrebbe essere la cartella che contiene cartelle come “wp-content.”)

Cerca il file wp-config.php.

wp-config.php

Aprilo e cerca la seguente riga nel codice del file:

define( 'WP_DEBUG', false );

Questo codice imposta la modalità di debug su “false” o disattivata.

Sostituisci questa riga con le seguenti due righe:

define( 'WP_DEBUG', true );

define( 'WP_DEBUG_LOG', true );

(Se non vedi nulla che assomigli alla riga originale nel wp-config, puoi inserire le due righe in qualsiasi punto del file prima della riga finale, che dovrebbe recitare, “/* Questo è tutto, smetti di modificare! Buona scrittura. */.”)

Quando salvi il file, la modalità di debug sarà attivata. Questo abiliterà anche il registro di debug WP, che genera un file debug.log nella directory /wp-content/. Questo file di registro degli errori può essere aperto e letto utilizzando la maggior parte degli editor di testo standard, come TextEdit o Notepad.

Nota per Nerd: Potresti anche scegliere di visualizzare i messaggi di errore direttamente sulla pagina. Per fare ciò, aggiungi il seguente codice a wp-config.php: define( ‘WP_DEBUG_DISPLAY’, true );

Ora, prova a visitare nuovamente il tuo sito web.

Poi apri il file di log nella directory /wp-content/.

Dovresti vedere alcuni dettagli riguardo all’errore PHP che si è verificato.

(Attenzione: Ricorda di disattivare la modalità di debug e il registro di debug dopo aver risolto il problema. Tieni presente che il registro di debug può a volte esporre vulnerabilità e altri problemi del tuo sito.)

Con queste informazioni disponibili, ci immergeremo nella risoluzione del problema.

Risoluzione Del Problema

Se hai seguito fino a qui l’articolo, presumibilmente sei arrivato alla parte in cui ora stai guardando il file di log e pensi, “cosa diavolo significa questo?”

Risolviamo definitivamente questo problema.

Eliminazione O Correzione Del Codice Del Tema

Uno dei problemi più comuni che genera il messaggio di errore critico è che hai del codice danneggiato o malformato da qualche parte nei file del tema del tuo sito.

Ad esempio, potresti vedere un errore come questo:

Errore di analisi: errore di sintassi, $end inaspettato in /home/name/public_html/wordpress/wp-content/themes/your_theme/functions.php alla linea 231

In questo caso, puoi vedere che il problema si trova nel file functions.php, specificamente alla linea numero 231. Questo ci indica esattamente dove guardare per risolvere il problema.

Ora puoi aprire il file delle funzioni, controllare la riga indicata e indagare per vedere cosa potrebbe aver causato l’errore di sintassi. Di solito, è qualcosa di semplice, come un punto e virgola mancante o un errore di battitura.

Se ricevi messaggi di errore che non sono molto chiari, puoi generalmente inserirli in Google o un altro motore di ricerca per trovare più informazioni. Raramente ti imbatterai in un problema unico, quindi è probabile che qualcuno abbia già affrontato — e risolto — il tuo specifico problema in precedenza. Pertanto, puoi di solito fare riferimento al WordPress Codex e ai forum di supporto per assistenza.

Non ti trovi a tuo agio o non sei familiare con PHP, e tutto questo sembra una lingua straniera per te? Considera di rivolgerti al supporto tecnico del tuo provider di hosting.

Condividi l’errore con loro e vedi se possono aiutarti a risolvere il problema.

Non appena hai corretto il problema, puoi salvare il file e poi verificare nuovamente il tuo sito.

Disabilita Plugin

Anche se non hai installato recentemente un plugin, questo può comunque causare un errore.

Molti siti sono impostati per aggiornare automaticamente i plugin, e un nuovo aggiornamento del plugin o della tua installazione WordPress potrebbe generare l’errore.

Come puoi capire se è questo il caso e determinare quale plugin è responsabile?

Riferendoti al tuo codice di errore, dovresti vedere la prova che un plugin sta causando il problema.

Potresti vedere un errore come questo:

Errore di analisi: errore di sintassi, $end inaspettato in /home/name/public_html/wordpress/wp-content/plugins/your_plugin/plugin.php alla linea 231

Puoi capire che si tratta di un errore legato ai plugin perché la posizione dell’errore è un file all’interno della cartella /wp-content/plugins.

Se sei un programmatore PHP esperto, puoi risolvere il problema (come discusso nella prima sezione.)

Se non è così, probabilmente vorrai disabilitare il plugin fino a quando non sarà trovata una soluzione.

cartella wp-content

Per fare ciò, naviga nella cartella /wp-content/plugins/your_plugin. Rinomina la cartella in qualsiasi modo tranne il suo nome attuale (ad esempio, “your_plugin_disabled”).

Questo disabiliterà il plugin che causa l’errore e ripristinerà il tuo sito mentre cerchi di risolvere il problema che sta generando l’errore.

Se questo non risolve il problema come previsto, o se stai riscontrando difficoltà, prendi in considerazione l’idea di disattivare temporaneamente tutti i tuoi plugin.

Fallo semplicemente rinominando l’intera cartella “plugins” in qualcosa di nuovo come “plugins_test”.

renaming to plugins_test

Questa non sarà una soluzione a lungo termine, ma è una parte importante della risoluzione dei problemi.

Se questo risolve il problema, puoi creare una nuova cartella chiamata “plugins” e poi spostare le cartelle dei plugin all’interno una per una per vedere quale plugin causa il malfunzionamento del sito.

Correlato: Come Creare il Tuo Primo Plugin di WordPress (Con una Quantità Minima di Codifica)

Aumenta Il Limite Della Tua Memoria

Se la WSoD appare solo occasionalmente o in certe parti del tuo sito, potrebbe essere perché il tuo sito ha superato il limite massimo di memoria. Questo si riferisce specificamente al limite di memoria PHP, che è la quantità di memoria allocata a PHP su cui funziona WordPress. Puoi utilizzare la schermata di informazioni sulla salute del sito per trovare dettagli sulla configurazione del tuo sito WordPress. Il limite è generalmente impostato a 40MB per impostazione predefinita, ma a volte questo non è sufficiente.

Per risolvere questo problema, devi assegnare più memoria alla tua installazione. Il modo esatto per farlo può variare a seconda della tua configurazione specifica e dell’host, ma copriamo alcuni dei metodi più comuni.

Per aumentare la memoria PHP del tuo sito:

  1. Accedi al tuo sito tramite SFTP/FTP, File Manager o SSH
  2. Naviga nella cartella radice di WordPress
  3. Apri wp-config.php

Tutto quello che devi fare è aggiungere la seguente riga in qualsiasi punto del file prima della riga di chiusura:

define( 'WP_MEMORY_LIMIT', '128M' );

Il numero + “M” indica la quantità di MB (megabyte) che vuoi allocare alla memoria PHP.

Puoi aumentare il limite di memoria solo fino a un certo punto. Il tuo sito e installazione avranno un massimo impostato che non puoi superare, quindi a un certo punto semplicemente non puoi continuare ad aumentare il limite. Se ciò accade e scopri che aumentare il limite di memoria non risolve il problema, potresti voler considerare l’aggiornamento del tuo piano di hosting attuale. È possibile che il tuo sito abbia superato l’ambiente di hosting e che tu debba considerare l’aggiornamento a un piano di hosting diverso.

Controlla Errori Non Comuni

Se sei arrivato fino a qui e non sei ancora riuscito a risolvere il tuo WSoD, hai tutta la nostra comprensione. Sei anche in minoranza, poiché le tecniche che abbiamo trattato finora risolveranno la stragrande maggioranza degli errori. Tuttavia, c’è ancora speranza!

Ora passeremo rapidamente in rassegna alcune delle problematiche meno comuni che possono causare problemi con WordPress (risultando nel WSoD). Queste sono meno probabili come causa ma non impossibili, quindi sono aspetti importanti da verificare se hai già provato tutto il resto.

Verifica Se Il Tuo Server È Inattivo

È possibile che i problemi del tuo sito derivino da problemi del server host. Il server potrebbe essere completamente inattivo, quindi verifica altri siti che sai essere ospitati sullo stesso server. È anche possibile che ci sia un errore del server o che il server non funzioni correttamente. Potrebbe anche essere inattivo per manutenzione.

Un modo per verificarlo è controllare lo stato del servizio del tuo host:

Stato del servizio DreamHost

Anche se il tuo server sembra funzionare bene e l’host non sta riscontrando problemi, dovresti comunque tentare di contattare il loro supporto. Il tuo sito potrebbe ancora avere difficoltà a causa del server, anche se nessun altro sta riscontrando lo stesso problema. Pertanto, potrebbero essere in grado di aiutarti.

Controlla La Tua Soluzione di Cache

Implementare una soluzione di cache in WordPress è un ottimo modo per velocizzare il tuo sito. Tuttavia, poiché salva versioni vecchie dei file, c’è il rischio che contenuti datati possano causare problemi.

Questo può essere risolto eliminando la cache, il che cancellerà tutti quei dati inutili memorizzati sul tuo sito. Una volta fatto questo, controlla di nuovo il tuo sito per vedere se hai risolto il problema. Se è così, potresti voler contattare gli sviluppatori della tua soluzione di caching per scoprire perché si è verificato il WSoD, o metterti in contatto con il team di supporto del tuo host.

Correlato: Tutorial per Ottimizzare la Velocità del Tuo Sito Web

Indaga Sul Tuo Sito Per File Corrotti

È raro che i file principali di WordPress vengano danneggiati, ma può succedere.

Ad esempio, un errore potrebbe verificarsi quando viene installata una nuova versione di WordPress, causando l’incompletezza di uno o più file. Quando ciò accade, solitamente si nota qualcosa nel log degli errori creato dalla modalità debug – ma non sempre. Se sospetti che ci sia un problema con i file principali del tuo sito, dovrai contattare il tuo host e chiedergli di aiutarti a diagnosticare e risolvere il problema.

Cosa Fare Se Nulla Risolve L’errore Critico

Nell’improbabile evento che l’errore critico persista dopo aver eseguito tutte le tecniche di risoluzione dei problemi sopra menzionate, è il momento di impiegare alcune soluzioni dell’ultima istanza.

Tuttavia, prima di fare qualsiasi altra cosa, dovresti prima contattare il team di supporto del tuo host se non lo hai ancora fatto. In molti casi, saranno in grado di aiutarti.

Un ultimo possibile problema potrebbe essere che la versione di PHP in esecuzione sul tuo server è obsoleta e non più supportata da WordPress. Questo accade ogni tanto se non mantieni aggiornato il tuo ambiente di hosting, poiché le nuove versioni di WordPress a volte richiedono una versione più recente di PHP. (Al momento della stesura di questo documento, WordPress richiede PHP 7.4 o successivo.)

Se ciò non funziona o il supporto del tuo hosting non può fornire assistenza, potresti dover reinstallare completamente WordPress.

A volte, se il tuo sito è stato violato o è stato aggiunto malware in qualche modo, può essere molto difficile rimuovere il problema senza ricominciare da capo.

Malware

Il Malware è un tipo di software dannoso progettato specificamente per causare danni al computer o al server della vittima. Più comunemente, viene utilizzato per accedere a informazioni private o per tenere in ostaggio i file.

Leggi di più

Ma se segui le nostre istruzioni su come recuperare un sito violato, dovresti essere in grado di reinstallare WordPress e ricollegarlo al tuo database esistente senza perdere tutti i tuoi file e contenuti.

È Stato Risolto?

Speriamo che questa guida ti abbia aiutato a riparare il tuo sito web 20 minuti fa e che non sia nemmeno arrivato fino a questo punto dell’articolo.

Ma benedici il tuo cuore se stai ancora leggendo.

Tieni presente che, sebbene molte di queste soluzioni possano sembrare semplici, possono rapidamente trasformarsi in problemi molto più grandi se non sei sicuro di ciò che stai facendo.

Quindi non avere paura di chiedere aiuto.

Dopotutto, è per questo che siamo qui.

Ad background image

Tu Lo Sogni, Noi Lo Programmiamo

Sfrutta oltre 20 anni di esperienza nella programmazione quando scegli il nostro servizio di Sviluppo Web. Dicci solo cosa desideri per il tuo sito — noi ci occupiamo del resto.

Scopri di più