Qual è un modo efficace per risolvere uno "schermo bianco della morte"


18

Molte volte sono stato in una posizione in cui il front-end di un sito Web Joomla è uno schermo vuoto senza contenuto, a volte noto come "schermo bianco della morte".

Ciò si è verificato dopo che un sito Web è stato spostato e si è anche verificato inaspettatamente su un sito Web precedentemente funzionante.

Supponendo che possano esserci varie cause diverse, qual è un modo efficace per risolvere e risolvere questo problema?

Risposte:


14
  1. Cambia la segnalazione degli errori al massimo

    • Accedi all'area di amministrazione
    • Vai a Configurazione globale -> server

    Innanzitutto è necessario impostare la segnalazione errori su Massimo

  2. Modifica file in FTP

    • Accedi ai file del tuo sito Joomla tramite FTP.

    • Trova il tuo file index.php situato nella radice del tuo sito.

    • Apri index.php e aggiungi questo codice direttamente dopo la prima riga del file:

      ini_set('display_errors', TRUE); error_reporting(E_ALL); 
      
  3. Modifica il file PHP.ini

    Nel file PHP.ini è necessario modificare queste due impostazioni:

    • Impostare Visualizza errore su Attivo: display_errors = On

    • Imposta segnalazione errori: error_reporting = E_ALL & ~E_NOTICE & ~E_STRICT

  4. Controlla il registro del tuo server

    Alla fine si ottiene un registro degli errori con il messaggio di errore che mostra il percorso dell'errore e il motivo dell'errore

Riferimento: http://www.ostraining.com/blog/joomla/white-screen-of-death/


2
Oltre a quanto sopra, consiglierei l'installazione e l'attivazione della console Firebug nel browser. Una volta fatto rivisitare il White Screen of Death. Sarai sorpreso da ciò che trovi a volte.
Prova Harder il

1
Un'altra cosa, di solito trovo che lo schermo bianco della morte abbia qualcosa a che fare con il file .htaccess.
Prova Harder il

1
In rare occasioni, può essere perché il file che si sta caricando utilizza una defined('FOO') or die();linea ma FOOnon è definito.
Andrew Eddie,

10

Queste altre risposte probabilmente ti porteranno alla risposta, tuttavia una cosa che ho notato come un problema minore è che alcuni plug-in hanno impostato da soli la segnalazione di errori e che possono sovrascrivere la segnalazione degli errori di Joomla, quindi un altro modo per risolvere questo problema è disabilitare le estensioni una alla volta tempo fino a quando il sito non viene caricato, i plug-in sono il principale offensore.

Controlla manualmente altre pagine, si carica? Se lo fa è un modulo o un componente caricato solo sulla prima pagina, che ti aiuta a isolarlo. Anche l'aggiornamento delle estensioni è una buona idea, se ha funzionato prima forse il tuo ambiente era PHP 5.2 e quando sei passato a 5.3 o 5.4 si sono verificati errori importanti nelle differenze.

In genere un aggiornamento di un'estensione può risolverlo, purché sia ​​mantenuto attivamente. Anche se in alcuni casi potrebbe essere il tuo modello.


1
Faccio anche questo nel modo opposto e spengo tutte le estensioni e poi le accendo una per una fino a quando il sito non si rompe. Stessa idea
David Fritsch,

1
A volte spegnerle tutte in una volta può portare a una pausa da sola. Non sempre, ma è successo una volta, quindi uno alla volta è stata la nostra soluzione.
Jordan Ramstad,

6

In questi casi, attiva il rapporto Errore Joomla al massimo, come mostrato di seguito. inserisci qui la descrizione dell'immagine Una volta che la segnalazione degli errori è attiva, provare a ricaricare la pagina Web. Ora ti mostrerà alcune frasi di errore. In realtà hai appena trovato le prime informazioni che devono essere sottoposte a debug per risolvere l'errore inserisci qui la descrizione dell'immagine

Ulteriori suggerimenti di debug di base sono disponibili in questo blog: http://www.readybytes.net/blog/item/a-beginners-guide-to-start-debugging-joomla.html


2

Sembra che nessuno abbia menzionato la disabilitazione del buffering dell'output, quindi lo citerò qui ...

Il buffering dell'output è molto sgradevole per il debug e anche se imposti la segnalazione degli errori al massimo e aggiungi le php.inivoci, non funzionerà ancora (non vedrai ancora gli errori). Questo può essere disabilitato semplicemente aggiungendo output_buffering = offal .htaccessfile come menzionato qui (si noti che potrebbe non funzionare in tutti gli ambienti).

Inoltre, un altro problema che causa una pagina vuota è che l'host stesso potrebbe aver disabilitato la segnalazione degli errori da parte sua - in tal caso, l'host deve essere contattato poiché molti host non consentono l'override delle proprie impostazioni.


1

Se hai gli URL SEF attivati ​​e stai usando il file .htaccess di Joomla! Assicurati che mod_rewrite sia abilitato sul server.

In molti casi, il file .htaccess è il colpevole, quindi supponendo che mod_rewrite sia abilitato, consiglierei di eseguire il backup del file .htaccess e quindi di eliminare l'originale (o rinominarlo), per vedere se questo fa la differenza.

Consiglierei anche di installare ed eseguire la console firebug nel tuo browser. Rivela spesso suggerimenti che è possibile utilizzare per rintracciare il problema (questo è vero per molti problemi diversi).

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.