
Как обновить PHP в Joomla: пошаговая инструкция
Чтобы обновить PHP в Joomla, сделайте бэкап, проверьте совместимость расширений, переключите версию в панели хостинга и протестируйте сайт.
Как обновить PHP в Joomla безопасно и без простоя
Чтобы обновить PHP в Joomla, сначала сделайте полный бэкап и убедитесь, что ваша версия Joomla, шаблон и расширения поддерживают новый PHP. Затем переключите версию в панели хостинга и проверьте сайт и админку.
Версия PHP определяет, насколько безопасно, быстро и стабильно работает сайт на Joomla. Устаревший PHP — частая причина взломов, ошибок при установке расширений и принудительных переездов на другой тариф. В статье разберём, какие версии PHP поддерживает каждая ветка Joomla, в каком порядке обновлять систему и что делать, если после смены версии появился белый экран.
Зачем вообще обновлять PHP
PHP — это язык, на котором работает ядро Joomla, шаблоны и все расширения. Каждая ветка PHP получает официальные исправления безопасности ограниченное время. PHP 7.4 и 8.0 уже не поддерживаются разработчиками языка, а значит, найденные в них уязвимости больше не закрываются. Сайт на таком окружении остаётся уязвимым, даже если сама Joomla обновлена.
Вторая причина — требования самой CMS и расширений. Joomla 5 не запустится на PHP ниже 8.1, а Joomla 6 требует PHP 8.3 и выше. Разработчики компонентов, интернет-магазинов и форм тоже постепенно отказываются от старых версий, и новые релизы просто не устанавливаются на устаревшем окружении.
Третья причина — производительность. Современные ветки PHP быстрее обрабатывают запросы и эффективнее расходуют память. Для сайта это означает более быстрый ответ сервера, а для владельца — меньше нагрузки на хостинг. Скорость загрузки важна и для пользователей, и для поисковых систем: и Яндекс, и Google учитывают удобство страниц.
Наконец, хостинг-провайдеры сами отключают старые версии PHP. Если не готовиться заранее, обновление придётся делать в спешке, а это самый рискованный сценарий.
| Версия Joomla | Поддерживаемый PHP | Статус и рекомендация |
|---|---|---|
| Joomla 3.10 | от 5.3.10 до 8.0 (8.1 только неофициально) | Поддержка завершена в августе 2023 года — срочно планируйте переход |
| Joomla 4.4 | от 7.2.5 до 8.3 | Срок поддержки безопасности рассчитан до октября 2025 года — переходите на 5.x |
| Joomla 5.x | от 8.1 до 8.3, в свежих релизах и 8.4 | Актуальная ветка — оптимальный выбор для большинства сайтов |
| Joomla 6.x | 8.3 и выше | Новейшая ветка — проверяйте совместимость расширений перед переходом |
Как узнать текущие версии Joomla и PHP
Перед любыми действиями выясните, с чем вы работаете. В админке Joomla откройте раздел «Система», затем «Информация о системе» (в английском интерфейсе — System → System Information). На вкладке «Информация о системе» указаны версия PHP, версия Joomla, база данных и веб-сервер. Запишите эти значения — они понадобятся при планировании.
Там же, на вкладке с настройками PHP, видно, какие модули подключены. Если на сервере нет mbstring, zip, gd, curl или xml, их придётся включить в панели хостинга до смены версии. Для работы с базой данных нужен mysqli или pdo_mysql.
Если доступа в админку нет, версию PHP можно посмотреть в панели хостинга (раздел с настройками PHP), а версию Joomla — в файле с описанием версии в корне установки или в подвале админки.
- 01Joomla 3.10
Обновитесь до последнего релиза ветки. Рабочий PHP: 7.4–8.0.
- 02Joomla 4.4
Промежуточный этап. Переключайте PHP на 8.1 и выше.
- 03Joomla 5.x
Актуальная ветка. Оптимально PHP 8.2 или 8.3.
- 04Joomla 6.x
Требует PHP 8.3+. Переходите после проверки расширений.
В каком порядке обновлять: PHP или Joomla
Универсального ответа нет, всё зависит от разрыва между версиями. Нужно найти пересечение: версию PHP, которую уже поддерживает ваша Joomla, и которую будет поддерживать следующая. Например, Joomla 3.10 работает на PHP 7.4, а Joomla 4.4 — на PHP 7.4 и на 8.1. Поэтому разумный путь такой: оставляете PHP 7.4, обновляете Joomla до 4.4, потом поднимаете PHP до 8.1 или 8.2, и только после этого идёте на Joomla 5.
Прыгать сразу через несколько версий PHP на старой Joomla не стоит. Старое ядро и старые расширения могут использовать функции, которых в новых ветках PHP уже нет, и вы получите критические ошибки.
Поэтому всегда сверяйте три компонента: ядро Joomla, шаблон и все установленные расширения. Слабое звено определяет, до какой версии PHP вы реально можете подняться.
Пошаговая инструкция: как обновить PHP на сайте Joomla
- 01
Узнайте текущие версии. Откройте «Система» → «Информация о системе» и запишите версии Joomla и PHP, а также список подключённых модулей PHP.
- 02
Сделайте полный бэкап. Сохраните файлы сайта и дамп базы данных с помощью Akeeba Backup или встроенных средств хостинга и скачайте копию на свой компьютер.
- 03
Проверьте совместимость. Откройте страницы используемых расширений и шаблона и найдите поддерживаемые версии PHP. В Joomla 3.10 используйте проверку перед обновлением (Pre-Update Check) в компоненте Joomla Update, в Joomla 4 и 5 требования к PHP отображаются в разделе обновления.
- 04
Создайте тестовую копию. Разверните сайт на поддомене или локально, установите нужную версию PHP и пройдите по основным страницам.
- 05
При необходимости обновите Joomla. Если целевая версия PHP не поддерживается вашей Joomla, сначала перейдите на подходящую ветку и обновите расширения.
- 06
Переключите версию PHP на хостинге. В панели управления (ISPmanager, cPanel, Plesk или собственная панель провайдера) найдите раздел с настройками PHP и выберите новую версию для нужного домена.
- 07
Очистите кеш и проверьте сайт. В Joomla выполните «Система» → «Очистить кеш», затем откройте главную, внутренние страницы, формы, поиск и админку, а также просмотрите журнал ошибок.
- 08
Включите наблюдение. В течение нескольких дней следите за ошибками в журнале сервера, отчётах Яндекс Вебмастера и Google Search Console, а также за поведением посетителей в Яндекс Метрике и Google Analytics.
Где переключить версию PHP
На виртуальном хостинге всё делается в панели управления. Обычно нужный пункт называется «PHP», «Настройки PHP», «Версия PHP» или «Select PHP Version». Выберите домен, укажите версию и сохраните настройки. Обратите внимание, что у некоторых провайдеров версия задаётся отдельно для каждого сайта, а у некоторых — для всего аккаунта. Иногда провайдер просит указать режим работы: модуль Apache, CGI или PHP-FPM. Для современных версий предпочтителен PHP-FPM.
На VPS или выделенном сервере версия PHP меняется на уровне системы: устанавливается нужный пакет PHP-FPM, а в настройках веб-сервера (Nginx или Apache) указывается соответствующий сокет или обработчик. Здесь важно не забыть установить все нужные модули для новой версии, потому что они ставятся отдельно для каждой ветки PHP.
Не меняйте версию вручную в файле .htaccess, если не уверены, что провайдер поддерживает такой способ. Неверная директива приведёт к ошибке 500 или к тому, что сайт начнёт отдавать исходный код PHP.
- Полная копия файлов и базы данных скачана и проверена на восстановление
- Joomla обновлена до последней версии своей ветки
- Шаблон и все расширения заявляют поддержку целевой версии PHP
- Для новой версии включены модули: mysqli или pdo_mysql, mbstring, zip, gd, xml, curl, intl
- Сделана тестовая копия сайта, и на ней всё работает
- Известно, как за минуту вернуть прежнюю версию PHP в панели хостинга
Что чаще всего ломается при смене версии PHP
Большинство проблем связано не с самой Joomla, а с чужим кодом. В новых ветках PHP убраны или изменены функции, которые десятилетиями использовались в старых шаблонах и расширениях. Это create_function, each, устаревший синтаксис обращения к символам строки через фигурные скобки, строгая типизация в ряде встроенных функций. Код, написанный под PHP 5.6 или 7.0, на PHP 8 часто выдаёт фатальную ошибку.
Вторая группа проблем — отсутствующие модули. После переключения версии на хостинге список подключённых модулей может отличаться от прежнего: для новой ветки нужно заново включить mbstring, zip, gd, curl и другие расширения PHP.
Третья группа — настройки. Лимит памяти, максимальное время выполнения и размер загружаемых файлов у каждой версии PHP могут настраиваться отдельно, поэтому после смены ветки значения иногда возвращаются к умолчанию, и тяжёлые операции, такие как обновление Joomla или импорт, перестают проходить.
Типичные ошибки при обновлении PHP
Как делать не надо
- Переключать PHP на боевом сайте без бэкапа и тестовой копии
- Поднимать версию сразу на две-три ступени, не глядя на требования Joomla
- Игнорировать устаревшие расширения и шаблон, которые давно не обновлялись
- Не включать нужные модули PHP после смены версии
- Менять версию вечером в пятницу, когда некому следить за сайтом
Как правильно
- 01
Всегда делать бэкап файлов и базы и проверять, что его можно восстановить
- 02
Выбирать версию PHP из диапазона, который поддерживает ваша Joomla и все расширения
- 03
Заменять заброшенные расширения на поддерживаемые аналоги до переключения
- 04
Сверять список модулей PHP сразу после смены версии
- 05
Планировать работы на время минимальной посещаемости и оставлять запас на откат
Белый экран и ошибки после переключения: как разбираться
Если сайт показывает пустую страницу или ошибку 500, не паникуйте. Первым делом верните прежнюю версию PHP в панели хостинга: сайт заработает, а у вас появится время спокойно разобраться. Это главная причина, по которой нужно заранее знать, где находится переключатель.
Дальше откройте журнал ошибок PHP, который есть в панели хостинга или в папке с логами на сервере. В строке с фатальной ошибкой указан путь к файлу, а по пути понятно, какое расширение или шаблон вызывает проблему. Если зайти в админку нельзя, переименуйте папку этого расширения через файловый менеджер, чтобы Joomla перестала его загружать.
Для диагностики включите в общих настройках Joomla максимальный уровень отчёта об ошибках, но только на время проверки. На рабочем сайте оставлять отображение ошибок включённым нельзя: пользователи увидят служебную информацию, а поисковые роботы могут проиндексировать мусор.
Фатальная ошибка в расширении или шаблоне, несовместимом с новым PHP.
Откатите версию PHP, найдите файл в журнале ошибок, обновите или отключите расширение.
Код использует устаревшие функции, которые ещё работают, но скоро исчезнут.
Отключите вывод ошибок на сайте, запишите источник и запланируйте замену расширения.
Плагин или модуль администратора вызывает ошибку при загрузке.
Переименуйте папку проблемного расширения через файловый менеджер и войдите заново.
Для новой версии не включены модули zip, curl или малы лимиты памяти и времени.
Включите модули в настройках PHP и увеличьте memory_limit и max_execution_time.
Что проверить после обновления и как это связано с SEO
Когда сайт заработал, пройдите по ключевым сценариям: главная страница, внутренние разделы, карточки товаров или статей, формы обратной связи, поиск, корзина, авторизация. Проверьте отправку писем: она нередко ломается после смены PHP из-за изменения настроек почты.
Для поисковых систем важно, чтобы страницы стабильно отвечали кодом 200, а не 500. Откройте Яндекс Вебмастер и Google Search Console и посмотрите разделы с ошибками обхода и доступностью сервера в первые дни после изменений. Если боты получали ошибки, они отобразятся в отчётах, и вы сможете быстро исправить причину.
Также сравните скорость ответа сервера и поведение посетителей по данным Яндекс Метрики и Google Analytics. Сам номер версии PHP не является фактором ранжирования, но стабильный и быстрый сайт без сбоев лучше индексируется и удобнее для пользователей.
Что даёт переход на актуальную версию PHP
- 01
Закрытые уязвимости и поддержка безопасности от разработчиков языка
- 02
Более быстрый ответ сервера и меньшая нагрузка на хостинг
- 03
Возможность обновить Joomla до актуальной ветки и ставить свежие расширения
- 04
Меньше риска внезапного отключения старой версии провайдером
- 05
Более предсказуемая работа сайта и меньше ошибок 5xx для поисковых роботов
Итоги: как не сломать сайт при обновлении PHP
- 01
Определите текущие версии Joomla и PHP в разделе «Информация о системе»
- 02
Сверьте требования ядра, шаблона и расширений с целевой версией PHP
- 03
Сделайте бэкап и протестируйте переход на копии сайта
- 04
При необходимости сначала обновите Joomla, затем PHP, и только потом переходите на следующую ветку
- 05
Переключите PHP в панели хостинга, очистите кеш и проверьте сайт и админку
- 06
Следите за журналом ошибок, Яндекс Вебмастером и Google Search Console
Если у вас много расширений, старый шаблон или интернет-магазин, обновление лучше доверить специалистам: они проведут аудит совместимости, подготовят тестовую копию и перенесут изменения на рабочий сайт без простоя.
Часто задаваемые вопросы
Ориентируйтесь на версию Joomla. Для Joomla 4.4 подойдут PHP 8.1–8.3, для Joomla 5 — 8.2 или 8.3, для Joomla 6 нужен PHP 8.3 и выше. Для устаревшей Joomla 3.10 максимум — PHP 8.0, а безопаснее остаться на 7.4 до перехода на актуальную ветку.
Можно, но только в пределах диапазона, который поддерживает ваша версия Joomla. Если нужен PHP 8.1 и выше, а у вас Joomla 3.10, сначала придётся перейти на Joomla 4.4 или 5.x.
Верните предыдущую версию PHP в панели хостинга, чтобы сайт снова заработал. Затем откройте журнал ошибок PHP, найдите имя расширения или шаблона, из-за которого возникла ошибка, и обновите или замените его.
Да. Старые ветки PHP (7.4, 8.0) не получают исправлений безопасности, а свежие версии расширений и самой Joomla перестают их поддерживать. Хостинги тоже постепенно отключают устаревшие версии.
Косвенно. Современный PHP быстрее отвечает на запросы, а стабильная работа без ошибок 5xx важна и для Яндекса, и для Google. Сам номер версии не является фактором ранжирования.
Доверьте обновление PHP и Joomla специалистам без риска для сайта
Проверим совместимость расширений, сделаем бэкап и переведём сайт на актуальную версию PHP без простоя.
Спасибо за заявку!
Мы свяжемся с вами в ближайшее время.
Сначала тестовая копия, потом боевой сайт


