RSS   Twitter   Copiny   Copiny
Нашел ошибку? 

Выдели фрагмент текста с ошибкой или неточностью и нажми Ctrl+Enter!

Белый экран вместо сайта. Как включить отображение ошибок в Joomla. Что мне делать?

При установке или настройки расширений, редактировании шаблона и многих других действиях на сайте при переходе по ссылке можно увидеть «белый экран». Браузер показывает белую страницу и ничего более.

Белый экран в большинстве случаев означает ошибку в php-коде одного из файлов. Вы могли где-то не закрыть скобку, не поставить точку с запятой, ошибиться буквой в операторе. «Белый экран» служит для лучшей защищенности сайта.

Если хакер попытается взломать сайт и увидит информацию об ошибке, это позволит ему быстрее достигнуть своей цели. По этой причине для работающего сайта в случае возникновения ошибки нормой считается показывать пустой экран. Но во время разработки такие ошибки нужно видеть.

Как включить отображение ошибок?

php.ini

Если вы работаете на локальном сервере, то отображение можно включить/выключить в файле php.ini. Находим в нем параметр «display_errors» и изменяем с «off» на «on».

.htaccess

Если же сайт находится на хостинге и доступа к php.ini нет, то в файл «.htaccess» (точка в начале обязательна), который находится в корне Joomla, добавляем строчку:

php_value display_errors 1

Возможно этого файла у вас нет, но в корне должен лежать дефолтный htaccess.txt. Просто переименуйте его, в противном случае создайте.

configuration.php

Joomla имеет собственный обработчик ошибок. Он настраивается из основного конфигурационного файла "configuration.php", который можно редактировать вручную, либо через панель управления.

В панели (Общие настройки / Сервер / Сообщения об ошибках) все просто - ставим максимум. Если правим вручную, то открываем его (лежит в корне сайта), находим параметр и зменяем его как показано ниже

var $error_reporting = E_ALL;

Средствами PHP

Этот способ поможет, если ничего выше не помогло. Перед проблемным местом укажите явный уровень вывода ошибок с помощью PHP. 

error_reporting(E_ALL);

Это явно заставит PHP отображать ошибки далее по коду.

Я увидел ошибку, что делать дальше?

Если вы знаете PHP, то решаем проблему. Если нет, то ищем того кто знает PHP.

Важно помнить и знать!

Отлаживаться и включить ошибки нужно только на тестовом сайте или локальной копии. Не нужно вашим посетителям видеть ваши ошибки.

С точки зрения безопасности всегда отключайте вывод ошибок на реальном сайте!

Смотрите также:
Комментарии (24) Добавить комментарий
  • Андрей Охотников
    Андрей Охотников
    30 Июля 2011, 00:42
     ↑  +6  ↓     ответ

    большое спасибо)

  • Ринат
    Ринат
    26 Ноября 2011, 20:34
     ↑  +1  ↓     ответ

    А где менять отображение ошибок, когда к примеру не ввел логин и пароль - выводится сообщение на красном фоне?! Где это смотреть?!

    • draff
      draff
      08 Марта 2012, 21:38
       ↑  0  ↓     ответ

      Для изменения вида системного сообщения,нужно редактировать в CSS id="system-message"

  • Евгений
    Евгений
    14 Января 2012, 14:46
     ↑  +1  ↓     ответ

    основная ошибка при которой выползает белый экран, это отсутствие библиотеки с функцией curl_init, подключите модуль php_curl

    • Андрей
      Андрей
      20 Февраля 2012, 18:32
       ↑  0  ↓     ответ

      Большое спасибо Евгений, за подсказку! Сначала сделала все так как было указано выше, но на проблемы с функцией curl сообщений не было, только не хедер рано посланный были нарекания...

  • Zalmat
    Zalmat
    29 Мая 2012, 12:55
     ↑  0  ↓     ответ

    Добрый день! Подскажите если не сложно!

    Сайт отображался девственно белым цветом, согласно вашей инструкции зашел в конфигурационный файл движка и в строчке var $error_reporting = '-1'; было вот это.

    Как только прописал

    var $error_reporting = E_ALL; все заработало, что означает параметр -1 и может ли он сам выставиться?

  • Zalmat
    Zalmat
    29 Мая 2012, 13:13
     ↑  0  ↓     ответ

    Впрочем.. сайт отображается только на моем ПК.. во всех браузерах, на других ПК не работает. Сайт не кеширован (клинер наше все). И это.. откуда такая мистика?

  • Денис
    Денис
    23 Июля 2012, 21:10
     ↑  0  ↓     ответ

    В общих настройках joomla я нажал Сайт выключен, после чего он перестал отображаться, выводится:

    "No configuration file found and no installation code available. Exiting..."

    В админку тоже не заходит, перенаправляется на .../installation/index.php, которого нет и пишет Not Found

    Как включить сайт?

    • Денис
      Денис
      23 Июля 2012, 22:45
       ↑  0  ↓     ответ

      Нашел причину, файл configuration.php из корня сайта стал пустым, всё стерлось из него, но почему такое произошло кто знает?

      • Alexandr Light
        Alexandr Light
        20 Мая 2016, 20:57
         ↑  0  ↓     ответ

        подскажи, как ты получил доступ к файлу configuration.php?

  • ARMAN
    ARMAN
    12 Февраля 2013, 03:02
     ↑  0  ↓     ответ

    пишет Deprecated: Assigning the return value of new by reference is deprecated in /home/xclan.ru/fivesquare/sites/www/includes/joomla.php on line 854 Deprecated: Function split() is deprecated in /home/xclan.ru/fivesquare/sites/www/offline.php on line 64

    ПОМОГИТЕЕЕЕ ПЛИИИИЗ

    • smet.denis
      smet.denis (админ)
      12 Февраля 2013, 10:45
       ↑  0  ↓     ответ

      Отключите показ ошибок в настройках Joomla

      • ARMAN
        ARMAN
        12 Февраля 2013, 10:53
         ↑  0  ↓     ответ

        а как это сделать?

  • Дмитрий
    Дмитрий
    12 Апреля 2013, 20:20
     ↑  0  ↓     ответ

    на локалке сайт работает нормально, на хосте выдает ошибку:

    Internal Server Error

    The server encountered an internal error or misconfiguration and was unable to complete your request.

    Please contact the server administrator, webmaster@имя сайта and inform them of the time the error occurred, and anything you might have done that may have caused the error.

    More information about this error may be available in the server error log.

    Additionally, a 500 Internal Server Error error was encountered while trying to use an ErrorDocument to handle the request.

    В соответствии с рекомендациями добпвил в .htaccess строку php_value display_errors 1 и в конфигурационном файле выставил параметр public $error_reporting = 'development';

    но все это ничего не дало

  • Дмитрий
    Дмитрий
    12 Апреля 2013, 21:57
     ↑  0  ↓     ответ

    проверил лог-файлы ошибок на сервере

    1. .htaccess: Invalid command 'php_value'

    2. .htaccess: Invalid command 'default_charset'

    как только убрал строку

    php_value default_charset utf-8

    сат заработал

  • aleksei
    aleksei
    25 Октября 2013, 15:48
     ↑  0  ↓     ответ

    установил свежий шаблон выдает белый экоан в админку не зайти пишет ошибку Fatal error: Class 'DOMDocument' not found in /var/www/u140435/data/www/spacemovie.ru/libraries/rokcommon/RokCommon/Service/Container/Loader/File/Xml.php on line 216

  • Наталья
    Наталья
    28 Ноября 2013, 19:24
     ↑  +1  ↓     ответ

    В общих настройках joomla я нажал Сайт выключен, после чего он перестал отображаться, выводится:

    "No configuration file found and no installation code available. Exiting..."

    В админку тоже не заходит, перенаправляется на .../installation/index.php, которого нет и пишет Not Found

    Как включить сайт, не потеряв данные?

  • Юрий
    Юрий
    12 Декабря 2013, 20:16
     ↑  0  ↓     ответ

    Люди ХЕЛП плизззз.

    Техподдержка не в силах ответить н апоставленный вопрос.

    У меня ПРОБЛЕМА вот с этой страницей: slavboard.com.ua/internet-resursy-slavuticha.html

    Раньше она была полностью заполнена текстом, я в очередной раз внес данные, а после сохранения БАЦ и вместо страницы "белый экран"...

    Ну, да Бог с ней. Сделал новую страницу, стал постепенно вводить информацию, сохранять каждый раз и в один момент БАЦ и опять "белый экран", откатываюсь на один абзац назад - работает (!!!) - появляется страница.

    Пробовал разный текст вносить (разные абзацы), в разные места статьи, что только не делал... НО система НЕ ДАЁТ ВНЕСТИ больше информации. Такое ощущение, что где-то стоит огарничитель "12345... знаков кода" или "12121... Кб страница". :)

    Сейчас на странице внесено "предельное" количество информации (символов в коде, как хотите..), далее вношу - всё - "белый экран". Все модули, которые ранее были на странице отключены.

    Страница состоит из таблицы, мелких картинок и текста в ней.

    Что не даёт мне вносить и дальше информацию??? ХЕЕЕЕЛП!

    Раньше было все нормально. Страница была заполнена до конца.

    ПРОШУ ПОМОЩИ.

  • Юрий
    Юрий
    26 Апреля 2014, 23:08
     ↑  0  ↓     ответ

    Всем доброго!

    При обращении в админку выдает белый экран.

    В файле configuration.php добавил:

    var $error_reporting = E_ALL;

    Теперь ругается:

    Fatal error: Class 'DojoLoader' not found in имя_сайта/plugins/system/sticky_toolbar/sticky_toolbar.php on line 19

    В базе данных в таблице any_extensions в поле enable стоит "1". Куда копать? Благодарю за ответ!

  • Matt
    Matt
    11 Августа 2014, 17:34
     ↑  0  ↓     ответ

    Уровень отображения ошибок в админке не должен показывать больше, чем установлено в настройках PHP.

  • site
    site
    23 Августа 2014, 23:17
     ↑  0  ↓     ответ

    почему joomla.org сразу не сделала такие норм ссылки в движке чтобы не ковырять ничего ?

    пожалуйста ребята все пишите просьбы предложения на сайт joomla.org и они уже точно исправят joomla.

  • Евгений
    Евгений
    11 Января 2016, 17:29
     ↑  0  ↓     ответ

    PHP ошибка парсинга - белый экран (решено!)

    мне удалось найти причину ошибку парсинга, когда PHP 5.6 аварийно прекращает работу, не выдавая никаких сообщений на экран или в лог.

    она возникает при смешанном коде HTML + PHP, когда внутри любой конструкции из фигурных скобок вставлен блок HTML кода, причём открывающая и закрывающая фигурная скобка находится внутри РАЗНЫХ блоков кода PHP, начинающихся различными открывающими тегами: <? и <?php

    пример кода, вызывающего аварийное завершение работы PHP:

    <?php if (TRUE) { ?>

    <p>тут код HTML</p>

    <? } ?>

    никакие манипуляции с директивами, управляющими отображением ошибок, вроде таких, не помогают:

    error_reporting(E_ALL & ~E_NOTICE & ~E_DEPRECATED & ~E_STRICT);

    ini_set('display_errors', 1);

    P.S. старые версии PHP работают без проблем

  • Алексей
    Алексей
    24 Января 2016, 20:28
     ↑  0  ↓     ответ

    Скажите пожалуйста, в чем дело? После загрузки новых товаров на сайт перестали отображаются страницы сайта, просто белая страница в браузере, административная панель работает. Раньше такого не было, а со вчерашнего дня начались такие сбои, пытаюсь включить отображение ошибок как у вас описано выше, но ничего не отображат.

  • Александр
    Александр
    13 Мая 2016, 20:31
     ↑  0  ↓     ответ

    Пишет:

    Error in php.ini: Validation error - display_errors: attribute "on" cannot be runned. Reason: Not installed PHP Debugger.

Оставить комментарий




* обязательно для заполнения

1 введенный почтовый адрес используется только для обратной связи при ответах в комментариях и сервиса gravatar.com
.