Переход на PHP 8.х

Урок 739 из 741
Автор: Татьяна Старкова
Сложность урока:
4 уровень - сложно, требуется сосредоточиться, внимание деталям и точному следованию инструкции.
4 из 5
Просмотров: 14780
Дата изменения: 18.11.2024
Недоступно в лицензиях:
Текущую редакцию Вашего 1С-Битрикс можно просмотреть на странице Обновление платформы (Marketplace > Обновление платформы).
Ограничений нет

Для работы продукта минимальная версия PHP – 8.1.

  Почему важно обновить PHP

Версия PHP 7.х объявлена устаревшей и больше не поддерживается, для неё не выпускаются исправления функциональных ошибок и ошибок безопасности. Использование версий PHP ниже 8.1 крайне не рекомендовано.

Вы не сможете установить обновления «Битрикс24» для исправления ошибок и получения нового функционала, пока не обновите PHP до минимальной версии 8.1 в своем серверном окружении.


  Как обновить PHP

Обновление версии PHP необходимо произвести поэтапно. Обратитесь к вашему системному администратору или в техподдержку хостинга.

  1. Обязательно создайте резервную копию вашей установки. Это может быть как резервная копия средствами продукта, так и полностью всего сервера, например виртуальной машины VMBitrix.
  2. Обновите ядро и все модули продукта до последних доступных версий в разделе Настройки > Marketplace > Обновление платформы.
  3. Обновите все сторонние решения из Маркетплейса до последних доступных версий в разделе Настройки > Marketplace > Обновление решений.
  4. Обновите версию PHP до минимальной 8.1 на своем сервере.

    Примечание. Если вы используете виртуальную машину VMBitrix, то обновить PHP можно через меню VMBitrix: 1. Manage servers in the pool – 6. Update PHP and MySQL. Подробнее читайте в курсе Виртуальная машина BitrixVM.

  5. Еще раз проверьте и установите все доступные обновления платформы и решений из Маркетплейса.

  Куда обращаться в случае ошибок при обновлении версии PHP до 8.х

  • Если после обновлений PHP появятся ошибки в работе стандартных модулей «Битрикс24», то обратитесь в Поддержку24.

    Также по модулям из Маркетплейса, в названия которых содержатся bitrix.*, нужно обращаться в Поддержку24, например:

    bitrix.eshop
    bitrix.sitecommunity
    bitrix.sitecorporate
    bitrix.siteinfoportal
    bitrix.sitepersonal
    bitrix.learningtemplates

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

  Примеры частых ошибок и их решения

Возможные причины ошибок после обновления до PHP 8.х:

  • До перехода на PHP 8.х не было обновлено ядро и все модули продукта до последних доступных версий в разделе Настройки > Marketplace > Обновление платформы.
  • До перехода на PHP 8.х не были уставлены обновления сторонних решений (они в названии имеют точку) на странице Настройки > Marketplace > Обновление решений.
  • Разработчик не обновил модуль для поддержки PHP 8.

Основные действия по исправлению ошибок после обновления PHP до 8.х:

  • Вернитесь на предыдущую версию PHP 7.x, когда все работало, обновите компоненты системы и сторонние модули, а затем повторно обновите версию PHP до 8.х.
  • Если предыдущие действия не исправили ошибки, то обратитесь к разработчику модуля – смотрите описание выше Куда обращаться в случае ошибок.
  • Временно отключите модуль с ошибкой, переместив его из директории /bitrix/modules.
  • Удалите стороннее решение с ошибкой.

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

[Ux11] Ошибка описания модуля "name.module". Не установлено соединение с сервером обновлений. [Ux11] Ошибка описания модуля "name.module".

При выполнении скрипта возникла ошибка. Включить расширенный вывод ошибок можно в файле настроек .settings.php.

PHP Fatal error: $GLOBALS can only be modified using the $GLOBALS[$name] = $value syntax in /www/bitrix/modules/main/tools.php

[TypeError] call_user_func_array(): Argument #1 ($callback) must be a valid callback, non-static method COMP\BXE\EventHandlers::AdminContextMenuShow() cannot be called statically (0)...

Белый экран после повышения версии PHP до 8.х, а на PHP 7.4 все работает




Нам жаль это слышать… Но мы постараемся быть лучше!

Мы благодарны Вам за помощь в улучшении документации.

Спасибо, мы рады что смогли помочь Вам. Ниже Вы можете оставить свой отзыв или пожелание :)
Мы стараемся сделать документацию понятнее и доступнее,
и Ваше мнение важно для нас
Курсы разработаны в компании «1С-Битрикс»