Який ефективний спосіб усунути “білий екран смерті”


18

Досить декілька разів я опинився в положенні, коли передній край веб-сайту Joomla - це порожній екран без вмісту, інколи відомий як "білий екран смерті".

Це сталося після переміщення веб-сайту, а також несподівано на раніше функціонуючому веб-сайті.

Якщо припустити, що можуть бути різні причини, що є ефективним способом усунення та усунення цієї проблеми?

Відповіді:


14
  1. Змініть повідомлення про помилки на максимум

    • Вхід в область адміністратора
    • Перейдіть до глобальної конфігурації -> сервера

    Спочатку потрібно встановити Повідомлення про помилки максимальним

  2. Редагування файлів у FTP

    • Увійдіть до файлів сайту Joomla через FTP.

    • Знайдіть файл index.php, що знаходиться в корені вашого сайту.

    • Відкрийте index.php і додайте цей код безпосередньо після першого рядка файлу:

      ini_set('display_errors', TRUE); error_reporting(E_ALL); 
      
  3. Відредагуйте файл PHP.ini

    У файлі PHP.ini потрібно змінити ці два налаштування:

    • Установіть помилку дисплея на Увімкнено: display_errors = On

    • Встановити повідомлення про помилки: error_reporting = E_ALL & ~E_NOTICE & ~E_STRICT

  4. Перевірте свій журнал сервера

    Нарешті, ви отримуєте журнал помилок із повідомленням про помилку із зазначенням шляху помилки та причини помилки

Довідка: http://www.ostraining.com/blog/joomla/white-screen-of-death/


2
Як і вищезазначене, я б рекомендував встановити та увімкнути консоль firebug у своєму браузері. Після завершення переглянути Білий екран смерті. Ви здивуєтеся тому, що знайдете іноді.
TryHarder

1
Інша річ, я зазвичай вважаю, що Білий екран смерті має щось спільне з файлом .htaccess.
TryHarder

1
У рідкісних випадках це може бути, тому що завантажуваний файл використовує defined('FOO') or die();рядок, але FOOне визначений.
Ендрю Едді

10

Ці інші відповіді, ймовірно, приведуть вас до відповіді, проте одна річ, яку я помітив як незначну проблему, - це те, що плагіни налаштовують error_reporting там самостійно, і це може перекрити повідомлення про помилки Joomla, тому інший спосіб виправити це - відключити розширення один на час до завантаження сайту, плагіни є головним правопорушником.

Перевірте інші сторінки вручну, чи завантажується вона? Якщо його модуль або компонент завантажується лише на головній сторінці, це допоможе вам виділити його. Також корисна ідея оновлення розширень, якщо вона працювала раніше, можливо, ваше середовище було PHP 5.2, і коли ви перейшли на 5.3 або 5.4, відбулася велика помилка, яка проходила через різниці.

Зазвичай оновлення розширення може виправити це, якщо його активно підтримується. Хоча в деяких випадках це може бути ваш шаблон.


1
Я також роблю це навпаки і вимикаю всі розширення, а потім включаю їх по одному, поки сайт не зламається. Та сама ідея.
Девід Фрітш

1
Іноді вимкнення їх відразу ж може призвести до розриву самостійно. Не завжди, але це траплялося один раз, тому по черзі було нашим рішенням.
Йордан Рамстад

6

У цих випадках просто включіть повідомлення про помилки Joomla до максимального рівня, як показано нижче. введіть тут опис зображення Щойно повідомлення про помилки активне, спробуйте перезавантажити веб-сторінку. Тепер він покаже вам декілька пропозицій про помилки. Насправді ви тільки що знайшли першу інформацію, яку потрібно налагодити, щоб вирішити помилку введіть тут опис зображення

Більш основні поради щодо налагодження можна знайти в цьому блозі: http://www.readybytes.net/blog/item/a-beginners-guide-to-start-debugging-joomla.html


2

Здається, ніхто не згадав про відключення буферизації вихідних даних - тому я згадаю це тут ...

Буферизація виводу дуже неприємна для налагодження, і навіть якщо ви встановите повідомлення про помилки максимальним і додаєте php.iniзаписи, воно все одно не працюватиме (ви все одно не побачите помилок). Це можна вимкнути, просто додавши output_buffering = offдо .htaccessфайлу, як згадувалося тут (зауважте, що це може працювати не у всіх середовищах).

Крім того, ще одна проблема, що спричиняє порожню сторінку, полягає в тому, що сам хост може відключити повідомлення про помилки щодо його кінця - у такому випадку з ним потрібно зв’язатися, оскільки багато хостів не дозволяють змінити власні налаштування.


1

Якщо у вас увімкнено URL-адреси SEF і ви використовуєте .htaccess файл Joomla!, Переконайтеся, що на сервері включено mod_rewrite.

У багатьох випадках винуватцем є файл .htaccess, тому припускаючи, що mod_rewrite увімкнено, я б рекомендував створити резервну копію файлу .htaccess, а потім видалити оригінал (або перейменувати його), щоб побачити, чи це має значення.

Я також рекомендую встановити та запустити консоль firebug у вашому браузері. У ньому часто виявляються підказки, які ви можете використовувати для пошуку проблеми (це стосується багатьох різних проблем).

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.