Non c’è niente di peggio che navigare nel proprio sito WordPress e improvvisamente incorrere nello schermo bianco della morte, che rende inaccessibile il sito sia agli amministratori che ai visitatori. Oggi vi guideremo nell’analisi di sei problemi comuni che sorgono con lo schermo bianco della morte di WordPress, vedremo quali sono le cause più frequenti e, soprattutto, le soluzioni per far sì che il vostro sito possa essere ripristinato il più velocemente possibile.

Lo schermo bianco della morte di WordPress? 😱 Non c'è bisogno di farsi prendere dal panico, ecco come risolvere velocemente. Click to Tweet

Lo Schermo Bianco della Morte di WordPress

Lo schermo bianco della morte di WordPress (WordPress white screen of death – WSOD) è quasi sempre causato da errori di codice PHP o esaurimento dei limiti di memoria. La prima cosa che dovreste fare è determinare se il pannello di amministrazione del vostro sito funziona ancora. Se il front-end del sito è giù, ma il pannello di amministrazione funziona, è probabile che abbiate un tema o un plugin difettoso. Potete verificare lo stato del vostro pannello di amministrazione semplicemente navigando su tuodominio.com/wp-admin.

Uno schermo bianco della morte potrebbe apparire leggermente diverso a seconda del browser. Ecco un esempio in Google Chrome. In realtà ci dà un avvertimento che dice “Questa pagina non funziona e non è in grado di gestire la richiesta.” Si tratta di un errore HTTP 500.

Lo Schermo Bianco della Morte di WordPress in Google Chrome

Lo Schermo Bianco della Morte di WordPress in Google Chrome

In Mozilla Firefox, si vede solo una schermata completamente bianca senza errori o avvisi.

Lo Schermo Bianco della Morte di WordPress in Mozilla Firefox

Lo Schermo Bianco della Morte di WordPress in Mozilla Firefox

Come Risolvere lo Schermo Bianco della Morte

Se vedi una schermata come quella qui sopra, potete seguire alcuni passaggi comuni per risolvere il problema:

  1. Disattivare Temi e Plugin
  2. Correggere gli Errori di Sintassi
  3. Attivare il Debug
  4. Aumentare i Limiti di Memoria
  5. Verificare le Anomalie nei Permessi sui File
  6. Verificare Eventuali Aggiornamenti Automatici Non Riusciti

1. Disattivare Temi e Plugin

Uno dei modi più semplici e comuni per risolvere il problema dello schermo bianco della morte di WordPress è semplicemente quello di disattivare tutti i plugin. Molte volte un sito va giù a causa di un cattivo aggiornamento di un plugin. Se riuscite ancora ad accedere al pannello di amministrazione, un modo rapido di procedere consiste nel selezionare “Plugin” e quindi “Disattiva” dal menu delle azioni di gruppo. Questo disattiverà tutti i vostri plugin. Se questo risolve il problema, dovrete trovare il plugin colpevole. Iniziate ad attivarli uno ad uno, ricaricando il sito dopo ogni attivazione. Quando il vostro front-end andrà di nuovo giù, avrete trovato il plugin non funzionante. È quindi possibile contattare lo sviluppatore del plugin per chiedere aiuto o pubblicare un ticket di supporto nella repository di WordPress.

Disattivare tutti i plugin di WordPress

Disattivare tutti i plugin di WordPress

Se non riuscite ad accedere al vostro pannello di amministrazione, potete accedere via FTP al vostro server e rinominare la cartella dei plugin con un nome tipo plugins_vecchi. Quindi controllate di nuovo il vostro sito. Se funziona, dovrete testare ogni plugin uno per uno. Rinominate la cartella del plugin in “plugins” e quindi rinominate ogni cartella dei plugin al suo interno, una alla volta, finché non lo trovate.

Rinominare la cartella dei plugin di WordPress

Rinominare la cartella dei plugin di WordPress

Lo stesso vale per i vostri temi WordPress. Potete sostituire temporaneamente il vostro tema con un tema predefinito di WordPress. Twenty Nineteen è una buona scelta. Se potete accedere al pannello di amministrazione, andate su “Temi” nel menu Aspetto, attivate il tema Twenty Seventeen e testate nuovamente il vostro sito. Se il vostro sito ricompare, il problema riguarda il vostro tema.

Cambiare momentaneamente il tema di WordPress

Cambiare momentaneamente il tema di WordPress

Se non riuscite ad accedere al vostro pannello di amministrazione, il processo è esattamente lo stesso dei plugin. Rinominate la cartella wp-content/themes con un altro nome, come, ad esempio, temi_vecchi. WordPress tornerà quindi al tema predefinito più recente, che prima di WordPress 5.0 sarà molto probabilmente Twenty Nineteen (se non si dispone di altri temi, è possibile scaricare Twenty Nineteen dalla repository di WordPress e caricarlo nella cartella dei temi, quindi controllare di nuovo il sito. Se funziona, allora forse il vostro tema ha un conflitto o un cattivo aggiornamento, nel qual caso potreste aver bisogno di contattare lo sviluppatore del vostro tema.

Rinominare la cartella dei temi di WordPress

Rinominare la cartella dei temi di WordPress

2. Correggere gli Errori di Sintassi

Un altra causa comune dello schermo bianco della morte può essere un errore accidentale di digitazione o di sintassi durante una modifica al codice nel vostro sito WordPress. Un carattere sbagliato nel posto sbagliato potrebbe distruggere l’intero sito. Sì, è effettivamente un po’ allarmante! Questa è una delle ragioni per cui non dovreste mai modificare il codice nel vostro sito in produzione.

Eppure non c’è da preoccuparsi. Potete sempre connettervi al vostro sito tramite SFTP e ripristinare le modifiche apportate manualmente. Se non sapete quale modifica ha causato il problema, allora dovreste avere a disposizione un backup di WordPress. Qui da Kinsta, è possibile ripristinare ad un momento precedente il proprio sito con un solo clic.

Ripristinare un sito WordPress da un backup

Ripristinare un sito WordPress da un backup

3. Attivare il Debug

Se siete ancora di fronte allo schermo bianco della morte di WordPress, o se il pannello di amministrazione non funziona (o se avete trovato il colpevole ma volete scavare più a fondo), potete abilitare il debug che esporrà eventuali errori. Il problema è che, quando si verifica un errore fatale, lo script termina semplicemente l’esecuzione. Se questo succede prima che venga visualizzato qualsiasi contenuto, tutto ciò che vedrete è uno schermo bianco senza alcun testo.

Per attivare il debug dovete aprire il file wp-config.php della vostra installazione di WordPress. Al suo interno dovreste trovare la seguente riga:

define( 'WP_DEBUG', false )

Dovrete sostituire false con true e ricaricare il sito. Se questa istruzione non esiste, potete aggiungerla in alto.

Esempio WP_DEBUG

Esempio WP_DEBUG

Invece dello solito schermo bianco, avrete uno schermo bianco e dei messaggi di errore. Non è un grande miglioramento, ma è almeno qualcosa da cui cominciare! Se non avete disattivato temi e plugin, dal messaggio di errore sarete in grado di capire quale di questi è il colpevole. Il messaggio dovrebbe indicare in quale file ha origine l’errore, qualcosa di simile a questo:

Cannot redeclare get_posts() (previously declared in /var/www/html/wordpress/wp-includes/post.php:1874) in /var/www/html/wordpress/wp-content/plugins/my-test-plugin/my-test-plugin.php on line 38

Nella parte finale di questo messaggio di errore viene evidenziato che il problema è nella riga 38 di un plugin chiamato “my-test-plugin”. Disabilitando quel plugin il problema dovrebbe risolversi.

Se siete soddisfatti delle vostre modifiche al codice, dovreste anche essere in grado di risolvere il problema. Se si tratta di un plugin proveniente dalla repository, vi consiglio di scrivere all’autore invece di apportare le modifiche da soli. Se modificate il plugin, dovrete anche mantenere tutte le modifiche, cosa che è molto complicata. È più facile disattivarlo finché non viene risolto da parte dello sviluppatore. Se dopo aver attivato il debug non vedete errori, potrebbe essere necessario contattare l’host, poiché il debug potrebbe non essere configurato correttamente sul vostro server.

4. Aumentare i Limiti di Memoria

Se vedete ancora una pagina vuota o ricevete un errore che lamenta limiti di memoria o memoria esaurita, dovrete assegnare più memoria all’applicazione. Su molte installazioni potete farlo attraverso il file wp-config.php, aggiungendo il seguente codice al file:

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

Se questa soluzione non sembra funzionare, avete diverse opzioni. In un ambiente normale potete utilizzare il tuo file .htaccess – nella root directory di WordPress – per aumentare il limite di memoria, semplicemente aggiungendo la seguente riga:

php_value memory_limit 64M

Se invece siete su un fantastico host come Kinsta, e il vostro sito web funziona in modo fulmineo perché l’architettura utilizza NGINX, .htaccess non sarà disponibile. È, però, possibile utilizzare il file php.ini per aumentare il limite di memoria. In un qualsiasi punto all’interno del file, aggiungete la seguente riga:

memory_limit = 64M

Se avete ancora memoria insufficiente e dovete assegnarne sempre di più, potrebbe esserci un problema all’interno della vostra applicazione. Forse il vostro tema o uno dei vostri plugin utilizza una quantità eccessiva di risorse. Chiedete ad uno sviluppatore di dare un’occhiata. Anche il vostro host potrebbe essere in grado di aiutarvi mostrandovi i log SQL e altre statistiche sull’utilizzo delle risorse.

5. Verificare le Anomalie nei Permessi sui File

Non abbiamo visto uno schermo bianco della morte causato da erronei permessi sui file, ma permessi e problemi di proprietà possono comunque causare problemi. Chi lo sa, forse in alcune circostanze, possono portare anche ad uno schermo bianco della morte! È possibile risolvere da soli, ma, a meno che non sappiate davvero cosa stai facendo, consigliamo di non farlo. Per WordPress ci sono tre semplici regole:

  • i file dovrebbero essere 664 o 644,
  • le cartelle dovrebbero essere 775 o 755
  • e il file wp-config.php dovrebbe essere 660, 600 o 644

Se avete accesso SSH al vostro server, potete applicare le regole appropriate con il seguente comando, eseguendolo dalla directory principale di WordPress.

sudo find . -type f -exec chmod 664 {} +
sudo find . -type d -exec chmod 775 {} +
sudo chmod 660 wp-config.php

Se non siete sicuri di come fare o siete un po’ preoccupati, lasciate stare e rivolgetevi al vostro host. Alcuni host specializzati su WordPress dispongono persino del controllo automatico dei permessi, cosa che può evidenziarvi eventuali anomalie.

6. Verificare Eventuali Aggiornamenti Automatici Non Riusciti

A volte WordPress può imbattersi in problemi di aggiornamento, come il time-out del server. Spesso questo problema si risolve automaticamente, ma in alcuni casi può portare a uno schermo bianco della morte.

La prima cosa da fare è andare nella vostra directory principale di WordPress e vedere se c’è un file .maintenance. Cancellate pure quel file e caricare di nuovo il tuo sito. Se l’aggiornamento ha avuto successo, ma WordPress non è riuscito a rimuovere automaticamente questo file, tutto tornerà alla normalità.

Se l’aggiornamento non è stato completato, è possibile che venga eseguito automaticamente, nel qual caso le cose dovrebbero tornare ugualmente alla normalità. Se tutto fallisce, allora seguite la procedura raccomandata di aggiornamento manuale di WordPress , che dovrebbe risolvere il problema una volta per tutte.

Riepilogo

Ci sono molte cose che possono andare storte, ma per fortuna la situazione non è sempre così terribile come sembra. Un semplice controllo sui temi/plugin dovrebbe risolvere, e abilitare il debug farà sicuramente luce sul problema. Se vi siete imbattuti in altre schermate bianche della morte di WordPress, fatecelo sapere in modo che possiamo imparare qualcos’altro e condividere l’esperienza!

28
Condivisioni