- Поиск и вывод PHP ошибок Joomla
- Вступление
- Видимость ошибок в браузере
- Ошибка 500
- Вывод ошибок на рабочем сервере
- Вывод ошибок на локальном сервере
- Вывод ошибок системы в панели Joomla
- Вывод ошибок, режим отладка Joomla 2,5
- Вывод ошибок, режим отладка Joomla 3,x
- Плагин j!Dump Joomla
- Итоги статьи
- Предупреждение об устаревшей версии PHP в Joomla
- Какую версию PHP использовать на Joomla?
- Как обновить версию PHP на Joomla?
- Как обновить версию PHP Joomla
- Виртуальный хостинг или VPS
- Самый простой способ
- Обновить PHP через cPanel
- Обновление через .htaccess файл
- VPS или выделенный сервер
- Обновление до версии PHP 5.6
- Обновление до версии PHP 7
- Обновление mod_php в Apache
- Обновление PHP-FPM в nginx
Поиск и вывод PHP ошибок Joomla
Вступление
Найти ошибку, которая привела к некорректной или фатальной ошибки Joomla одна из самых трудных задач при работе с системой. Пожалуй, невозможно перечислить все вероятные ошибки, которые вы можете теоретически встретить при общении с Joomla. Более правильным будет указать пути, по которым нужно двигаться в поиске ошибок и их отладки.
Основные языки программирования, на которых написана CMS Joomla это два сценарных языка PHP и JavaScript. При этом сценарный язык (анг.scripting language) PHP является основным языком Joomla и, как правило, ошибки, возникающие при работе с Joomla это результат его неправильной (некорректной) работы.
В этой статье я сформулирую первые действия, что сделать сначала, чтобы осуществить правильный поиск ошибок и после найти отладку (способ исправления) «неправильного» скрипта вашей Joomla.
Прежде всего, ошибку нужно увидеть. Речь идет не о результатах ошибки (пропадании сайта и т.п.). Речь идет, как увидеть причину ошибки, если хотите определить диагноз ошибки. От этого зависит дальнейшая отладка системы и исправление ошибки.
Видимость ошибок в браузере
Первое место, где вы видите сообщение о возникшей серьезной ошибке, это ваш рабочий браузер. Вы наверняка встречали при открытии сайтов, вместо страниц сайта пустое окно браузера и в нем цифровая (кодовая) ошибка. И речь не идет об ошибках класса 4×× (Ошибки со стороны клиента), например, ошибка 403-Ничего не найдено. Речь о более серьезных ошибок, начинающихся с цифры «5». Это класса ошибок 5×× (Ошибки со стороны сервера).
Ошибка 500
Ошибка 500 это любая ошибка со стороны сервера, которая не расшифрована в остальных кодах 501-510. Это наиболее часто встречающаяся ошибка, связанная с ошибками в коде системы. Если при работе с системой Joomla вы в браузере видите сообщение об ошибке 500 , эта ошибка выдается сервером Apache и ее причину нужно смотреть в логе ошибок вашего веб-сервера. (О логах ошибок веб-сервера читать ТУТ).
Как правило, из лога ошибок, будет понятно, какой файл системы привел к ошибке. После этого нужно переходить к этому конкретному файлу и решать конкретную, уже локализованную причину ошибки. Но это не всегда так просто. Из журнала лога ошибок, бывает не понятно, какие конкретные действия приводят к ошибке и какой PHP -код ее сформировал.
Вообще говоря, интерпретатор PHP всегда определяет возникающие ошибки. И показ ошибок Вам, изначально, зависит от настроек конкретного сервера. Сервер должен быть настроен так, чтобы интерпретатор PHP имел возможность сообщить об ошибке, а вы могли увидеть это сообщение. Причем интерпретатору должен быть указан вид вывода сообщения об ошибке. Это или окно браузера или запись в журнале ошибок или и то и другое по выбору.
Настройка вывода ошибок зависит от вашего хостинга.
Вывод ошибок на рабочем сервере
На рабочем сервере (коммерческом хостинге) включение вывода ошибок ищите в настройках хостинга. Как правило, вывод ошибок по-умолчанию включен, и вывод ошибок настроен как вывод сообщений в журнал ошибок. Убедитесь, что эта функция сервера включена. Опять-таки, по — умолчанию, не имеет смысла включать на рабочем сервере вывод ошибок на экран. Эти ошибки будут видеть все гости сайта и это лишнее. Однако в критических, аварийных ситуациях, можно воспользоваться временно, выводом ошибок на экран. Об этом чуть ниже.
Вывод ошибок на локальном сервере
На локальном (домашнем) сервере, у вас есть все права на любые настройки сервера и вывод ошибок вы можете настроить сами. Наверное, все готовые платформы локального сервера (OpenServers, Денвер, Xmapp и т.д.) уже настроены на вывод ошибок в журнал и/или на экран. Но в том, то и прелесть локального сервера, вы всегда можете изменить любые его настройки.
Настроить вывод ошибок на локальном сервере нужно в файле php.ini.
Для разрешения вывода ошибок в файле php.ini должна быть строка:
Примечание: NOTICE ошибки это возможные, но не явные ошибки. Например, опечатка, предупреждение о плохом стиле, и.т.п.
Для вывода ошибок в журнал, должна быть строка:
Для вывода ошибок на экран в файле php.ini должна быть строка:
Вывод ошибок на экран, во время старта PHP
Понятно, что замена «on» на «off» все это отключит.
Повторюсь, интерпретатор PHP сам выводит сообщения об ошибках, нужно только разрешить и дать ему возможность (настроить) эти сообщения выводить в журнал на сервере, а при необходимости показывать их на экране.
Но вернемся к рабочим серверам и CMS Joomla. В Joomla есть функция в административной панели сайта, включив которую вы можете выводить ошибки системы на экран.
Вывод ошибок системы в панели Joomla
В CMS Joomla предусмотрено включение режима отладки системы, при которой все, подчеркну ВСЕ, ошибки будут выводиться на экран вместе их возникновения и в режиме реального времени.
Вывод ошибок, режим отладка Joomla 2,5
Административная панель сайта ->Меню ->Сайт->Общие настройки->Система
Вывод ошибок, режим отладка Joomla 3,x
Административная панель сайта-> Меню ->Сайт->Общие настройки->Система
В обоих версиях можно настроить, какой режим вывода ошибок во время отладки должен быть.
Включение режима отладки системы Joomla из панели сайта, может не сработать. Это может произойти, если на вашем хостинге такой режим не включен (в файле php.ini). Если у вас нет доступа к файлу php.ini, а потребность включить режим отладки есть, то просто напишите в support вашего хостинга и попросите временно включить режим вывода ошибок. ( Я так и делаю). После устранения ошибки, верните все в исходное состояние, иначе гости вашего сайта будут видеть все ошибки на экране.
Но и из этой ситуации, есть выход. Есть плагин Joomla, который выводит ошибки системы во всплывающем окне и с видимостью только для вас. Это плагин j!Dump .
Плагин j!Dump Joomla
Это плагин для отладки системы Joomla в реальном времени, с выводом ошибок на экран только для вас. Плагин работает на версиях Joomla 2.5 и 3.х. Устанавливается плагин стандартным способом. В настройках понятен и, по отзывам, вполне работоспособен. На сайте extensions.jоomla.com этот плагин есть.
Итоги статьи
- Итак, при работе с Joomla у вас «выскакивают» ошибки на стороне сервера приводящие к некорректной работе системы или ее отключении (Error). Что делать?
- Если вы не программист и не находитесь в процессе разработки и к этому у вас рабочий (не локальный сервер), то прямиком «идете» на сервер и смотрите журнал ошибок (лог ошибок);
- Если журнал ошибок отсутствует, то в настройках сервера ищите и включаете запись ошибок в журнал;
- Если из журнала не удалось понять причину ошибки, включаете режим «Отладка системы» в административной панели сайта;
- Если режим отладки не включается, обращаетесь в support сервера с просьбой такой режим временно включить. Включается он в файле php.ini;
- Если вы работаете на локальном (домашнем) сервере, то самостоятельно проверьте настройки возможности интерпретатора PHP для вывода, показа и записи PHP ошибок, возникающих при работе. Опять таки, файл php.ini.
Это все, что хотелось сказать про Поиск и вывод PHP ошибок Joomla!
Источник
Предупреждение об устаревшей версии PHP в Joomla
» >PHP устарела. Из материала вы узнаете, что нужно делать в таких случаях.
Предупреждение имеет следующий вид:
Ваша версия PHP в настоящее время получает только исправления безопасности от проекта PHP. Это означает, что ваша версия PHP скоро не будет поддерживаться..
Данное сообщение не является поводом для беспокойства и лишь оповещает о том, что сайт функционирует на устаревшей версии PHP.
Сайт как функционировал, так и будет продолжать функционировать, даже если вы не захотите обновлять PHP, однако сделать это не составляет труда.
Какую версию PHP использовать на Joomla?
Следуйте рекомендации в предупреждении: если написано рекомендуется PHP 7.x , то активируйте последнюю доступную версию в данной линейке.
Как обновить версию PHP на Joomla?
Существует 2 способа:
- самостоятельно через панель управления хостингом
Как правило, хостинг-провайдеры дают возможность своим клиентам изменять версию PHP в панели управления хостином.
через запрос в службу поддержки хостера
Актуально в случае, если опция по смене версии PHP хостером не предоставляется, или вы не можете её отыскать.
После обновления версии PHP обязательно проверьте функционирование внешних страниц сайта. При возникновении ошибок активируйте предыдущую версию PHP и примите меры:
Либо оставьте сайт работать на прежней версии PHP до момента, пока не станут доступны обновления для расширений, делающие их совместимыми с актуальными версиями PHP.
» >плагин «Панель иконок — Проверка версии PHP» но он системный и не вырубается?
Всё о Joomla в одном месте
Последняя версия CMS Joomla — бесплатная система управления контентом с открытым исходным кодом. Джумла постоянно обновляется, имеет огромное количество расширений и позволяет создавать любые типы сайтов. |
Joomla.center is not affiliated with or endorsed by the Joomla! Project or Open Source Matters. The Joomla! name and logo is used under a limited license granted by Open Source Matters the trademark holder in the United States and other countries.
Joomla!® является торговой маркой компании Open Source Matters inc в США и др. странах. Название Joomla! и его вариации используются в рамках ограниченной лицензии, определённой компанией Open Source Matters. Проект joomla.center не относится к компании Open Source Matters или проекту Joomla! Точки зрения представленные на данном сайте не являются официальными точками зрения Joomla Project или Open Source Matters. Торговая марка Joomla® и логотип используются в рамках ограниченной лицензии, предоставленной Open Source Matters.
© Александр Куртеев. Центр обучения Joomla.
ОГРНИП 307434525600161, ИНН 434540800305
Все права защищены. © 2008 — 2021
Источник
Как обновить версию PHP Joomla
Если вы читаете этот пост, скорее всего, ваш сайт работает с древней версии PHP. Вы не одиноки, версия PHP 5.3 используется на 31,1% всех сайтов и 5.4 на 29% сайтов. Обе эти версии PHP уже достигли конца своей жизни и больше не будет поддерживаться. А это значит, что на вашем сайте потенциально возможны большие угрозы безопасности.
Joomla является одной из самых мощных и безопасных CMS на планете. Но одной лишь Joomla не достаточно, чтобы защитить ваш сайт, если вы используете старую версию PHP. Люди часто критикуют и обвиняют CMS, когда их сайт взломан, но они могут и не понять, что это могло произойти из-за проблемы на сервере.
В Joomla недавно подняли требования к версии PHP до PHP 5.6 или 7. Но CMS также может работать на PHP 5.3.10+.
PHP 7 уже выпустили, и это прорыв истории в PHP. Поэтому давно пора обновить серверную версию PHP до PHP 7 или, по крайней мере, до 5.6+. В этом уроке я собираюсь показать вам, как вы можете это сделать.
**Важно : если вы решили обновиться до PHP 7, убедитесь, что версия Joomla на вашем сайте 3.5+ для того, чтобы система работала должным образом.
Виртуальный хостинг или VPS
Самый простой способ
Попросите своего хостера обновить PHP версию хостинга. Скорее всего, он сделает это бесплатно, и это самый простой способ обновиться. Однако, если они отказались или не в состоянии сделать это, то пришло время перейти к надежному поставщику услуг.
Обновить PHP через cPanel
Большинство хостингов предоставляют cPanel для самостоятельного управления хостингом. CPanel позволят вам обновить версию PHP через свой интерфейс. Найдите диспетчер версии PHP или варианты конфигурации PHP и щелкните по нему.
Выберите версию PHP 5.6+ или 7 и сохраните изменения.
Обновление через .htaccess файл
Если перечисленные выше способы не работают для вас, то ваш лучший выбор — обновить версию PHP с использованием файла .htaccess.
Перейдите в cPanel, «Диспетчер файлов» и выберите корень сайта. Это можно сделать и с помощью FTP. В корневом каталоге создайте новый файл (или отредактируйте существующий) .htaccess и добавьте следующую строку:
Чтобы перейти на PHP 5.6
Чтобы перейти на PHP 7.0
Эта настройка применяется рекурсивно для всех вложенных папок. В случае, если вы хотели бы иметь другую версию PHP в подкаталоге, создайте в нем новый .htaccess файл с директивой для нужной версии PHP.
VPS или выделенный сервер
Если вы используете Ubuntu 14.04 или ниже Вы можете обновиться с помощью этой команды :
Давайте добавим PHP репозиторий в наш список. Пожалуйста, выбрите соответствующую версию.
Обновление до версии PHP 5.6
Ваша версия PHP теперь повышена и необходима просто перезагрузить сервер.
Apache : sudo service apache2 restart
Nginx : sudo service nginx restart
Обновление до версии PHP 7
Обновление до версии PHP 7 требует немного дополнительной работы. Зависит от вашего веб-сервера для выполнения этой команды.
Обновление mod_php в Apache
Во-первых, необходимо установить новые пакеты (packages). Это обновит все важные файлы PHP, за исключением пакета PHP5-MySQL, которая будет удалена.
Примечание: если вы внесли существенные изменения в файлы конфигурации в /etc/PHP5, то эти файлы останутся на месте, и на них можно ссылаться. Конфигурационные файлы для PHP 7.0 будут находиться в /etc/PHP/7.0.
Если вы используете MySQL, убедитесь в том, чтобы повторно добавить обновленные версии PHP и MySQL привязки:
Обновление PHP-FPM в nginx
А теперь поговорим о процессе обновления системы с помощью nginx в качестве веб-сервера и PHP-FPM для выполнения PHP-кода.
Во-первых, установите новый PHP-FPM пакет и его зависимости:
После этого вам будет предложено продолжить. Нажмите клавишу Enter, чтобы завершить установку. Если вы используете MySQL, убедитесь, что повторно установили PHP привязки к MySQL:
Примечание: если вы внесли существенные изменения в файлы конфигурации в /etc/PHP5, то эти файлы останутся на месте, и на них можно ссылаться. Конфигурационные файлы для PHP 7.0 будут находиться в /etc/PHP/7.0.
Теперь обновите ваш сервер nginx блок с новым PHP 7.0.
Сохраните и закройте файл. Теперь остается просто перезагрузиться.
Проверить вашу версию PHP в админ-панели Joomla, откройте Система > Информация о системе. Вы сможете увидеть там номер вашей PHP версии.
Я настоятельно рекомендую обновиться до PHP 7, потому именно использование последней версии PHP сделает ваш сайт намного быстрее. Да и обновить версию совсем не сложно!
Источник