Как говорится, нет хуже вируса, чем кривые ручки пользователя. В общем в один прекрасный момент поимел белый экран вместо сайта. Причем не один раз, а два: в первый раз был белый экран при входе на сайт, а второй раз при входе в админку сайта.
Предыстория незамысловатая: вместо того, чтобы обкатывать приложения и шаблоны на локальной машине, как положено, я проверял это дело на живом сайте. Соответственно со временем набралось куча мусора не только в базе данных, но и файлов с папками на сайте. В отличие от настольных операционных систем, например Windows, CMS Joomla при деинсталляции, к примеру компонентов, не удаляет полностью файлы на хосте и записи в базе данных, а только ставит типа галочки, что компонент удален. Чистку приходится делать самому. Чтобы проводить данные очистку надо как минимум знать, какие записи в базе данных и какие файлы с папками необходимо удалять. Понять это можно по названию компонента, при продолжительной практике. Тем не менее черт меня дернул удалить папку FOF и записи в базе данных.
О том, что это необходимая библиотека Joomla можно было понять по значку системного файла в строке "Управление", что я не сделал.
В итоге белый экран при входе на сайт и при входе в админку. Следует учесть, что белый экран сайта - это своеобразная защита от злоумышленников, которые не смогут увидеть какая ошибка у вас выходит. Решений может быть несколько:
- если есть свежая резервная копия, то сделать восстановление;
- если помните, какую папку удаляли, то скачать с сайта joomla.com свежую версию и залить ее на сайт по новой;
- если не помните, что удаляли, то лично мне помогла статья с сайта joomlablog.ru, причем поиск ошибок по логам joomla и сервера ни к чему не привели.
Утверждается, что при выходящей ошибке 500 не вывод ошибок в логах невозможен, но тем не менее это так. Кстати, ошибка 500 может выходить и при выставлении неправильных прав на файлы: на папки должны быть выставлены права 0755, на файлы 0644. Также не помогли мне манипуляции с файлами .htaccess, index.phph и php.ini - не выводилась никакая ошибка. Мне помогло изменение режима сообщения об ошибках на Максимум: открыл свой сайт через FTP и в корне сайта файл скачал файл configuration.php. Изменил значение переменной $error_reporting на maximum, то есть: $error_reporting = 'maximum';
После заливки отредактированного файла заливаем его обратно с заменой.
Важно! Оставляем дубликат не отредактированного файла где-нибудь в паке "Оригинал", чтобы залить его потом спокойно обратно, так как чем больше правок файла, тем вероятнее допуск ошибки вами в коде!
В результате сайт нам выдает какой папки не хватает. Возвращаем недостающие файлы обратно и оригинальный файл configuration.php обратно на сайт. Если ошибка выходит в результате кривого шаблона, то можно отключить его в базе данных и включить стандартный шаблон. Например, у меня также выходил белый экран из-за шаблона, за который заплатил деньги, от одной очень известной компании. Я так понимаю, что основной доход разработчики имеют не от продажи шаблонов, а от удаления только им известных штучек, которые делают эксплуатацию шаблона без вмешательства их вебмастера невозможно. Высасывание денег. Не удалось им у меня отсосать - сменил шаблон. Удачи всем!