Jak mogę zobaczyć komunikaty o błędach, gdy witryna, nad którą pracuję, ma biały ekran?
25
Umieść to na dole settings.php:
error_reporting(-1); // Have PHP complain about absolutely everything
$conf['error_level'] = 2; // Show all messages on your screen, 2 = ERROR_REPORTING_DISPLAY_ALL.
ini_set('display_errors', TRUE); // These lines just give you content on WSOD pages.
ini_set('display_startup_errors', TRUE);
Zasób Biały ekran śmierci (całkowicie pusta strona) na drupal.org przeprowadzi cię przez kolejne etapy, aby zobaczyć komunikat o błędzie, a także typowe problemy, które je powodują.
źródło
Zajrzyj do dziennika błędów Apache, w Ubuntu, w którym się znajduje,
/var/log/apache2/error.log
dzięki czemu możesz:źródło
sudo tail -f /var/log/apache2/error.log
Znalazłem prosty sposób na śledzenie błędów WSOD, uruchamiając całą witrynę
drush
, np .:Po tym wejdź na stronę pod podanym nowym adresem (np.
127.0.0.1:8080
), A następnie spróbuj odtworzyć problem, a zobaczysz wszystkie błędy na ekranie terminala. Nie musisz ponownie konfigurować swojego PHP, szczególnie w przypadkudisplay_errors
awarii (np. MAMP).Znalazłem też inny trudny sposób, używając debuggerów, np .:
OS X:
Linux:
Uwaga: zmień
httpd
na,php
jeśli używaszdrush rs
jak wyżej.Lub instalując
XDebug
rozszerzenie PHP i wygeneruj plik śledzenia (xdebug.auto_trace=1
).źródło
Jeśli używasz drush, możesz zobaczyć komunikaty o błędach za pomocą komendy drush-ws.
źródło
Właśnie zmieniłem wartość zmiennej $ update_free_access z FALSE na TRUE i wykonałem plik update.php. To rozwiązało mój problem.
źródło
Możesz zmodyfikować index.php i zawinąć kod za pomocą try / catch. Lubię to:
Komunikat o błędzie pokaże plik i wiersz kodu, który spowodował błąd.
źródło