реклама
разместить

Пошаговая инструкция по переходу сайтов на 1С-Битрикс на PHP 8.x: идеальный и нестандартный методы

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

Пошаговая инструкция по переходу сайтов на 1С-Битрикс на PHP 8.x: идеальный и нестандартный методы

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

Если вы используете сайт под управлением 1С-Битрикс любой редакции и ваш сайт работает на PHP версии ниже 8.0 — вы можете лицезреть вот такую надпись в админ панели своего сайта:

Пошаговая инструкция по переходу сайтов на 1С-Битрикс на PHP 8.x: идеальный и нестандартный методы

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

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

Что делать

На первый взгляд очевидно, что нужно просто перейти на работу сервера в связке с PHP 8-ой версии. Ок. Идем в панель управления хостингом. Находим наш сайт, переходим в настройки и выбираем нужную версию PHP. Можно выбрать сразу 8.2 последнюю. к примеру, в панели ispmanager это делается здесь:

Пошаговая инструкция по переходу сайтов на 1С-Битрикс на PHP 8.x: идеальный и нестандартный методы

Переходим на сайт для проверки и с вероятностью 99,99% ваш сайт сломается или вообще выдаст белый экран.

В чем проблема и болезненность перехода

Все просто. В новой версии PHP немного изменились требования к написанию кода и то, что разрешалось в версии 7.4, например, теперь вызывает ошибку и сайт ломается. Получается для работы сайта необходимо, чтобы весь код соответствовал новым требованиям. Как известно Битрикс — это система управления, состоящая по большей части из ядра и публичной части. С ядром все понятно, но остается сторонний код: это и шаблон, и свои компоненты, и сторонние модули, установленные из Макретплейса Битрикс. Вот в них и заключается вся боль.

Мы рассмотрим два сценария обновления сайта. Первый — идеальный (правильный, рекомендуемый), а второй — нестандартный (комбинированный метод)

Идеальный вариант: последовательность шагов

1. Так как «Битрикс» уже все обновил и настроил под использование 8-ки, прежде чем изменять настройки сервера, мы должны обновить ядро через стандартный функционал «Битрикс». Естественно для этого у вас должна быть активная поддержка на решение. Если нет, и вы видите надпись, что срок поддержки вашей лицензии окончен, то необходимо продлить ее, купив за 25% от стоимости лицензии. Редакцию вашей лицензии вы можете увидеть все в том же разделе /bitrix/admin/update_system.php?lang=ru в секции «Ответ сервера обновлений».

Пошаговая инструкция по переходу сайтов на 1С-Битрикс на PHP 8.x: идеальный и нестандартный методы

2. Теперь переходим в установленные решения.

Пошаговая инструкция по переходу сайтов на 1С-Битрикс на PHP 8.x: идеальный и нестандартный методы

В этом разделе нас интересуют все сторонние решения, установленные на сайте. Их необходимо также обновить. Конечно, есть платные и бесплатные решения. Бесплатные обновляем, а на платных смотрим срок поддержки активен или нет. Если нет, то каждое решение необходимо продлить. Условия продления могут быть разными, но обычно это 50% от стоимости решения. Подробнее вы можете посмотреть на странице Маркетплейса, кликнув по названию этого решения.

3. После обновления ядра и всех сторонних модулей переходим к тому, с чего начинали: производим настройку на стороне хостинга, выставив нужную версию.

Результат: Если сайт небольшой, относительно новый и создавался с использованием стандартных компонентов Битрикс (с минимальными внесениями изменений) или на каком-либо готовом решении, то он запустится без каких-либо проблем. К сожалению, за нашу практику мы ни разу не встретили сайт, который достаточно просто обновить. Так что нам такой вариант не подходит. Поэтому мы работаем по второму сценарию.

Нестандартный (комбинированный) метод: последовательность шагов

Данный метод пригодится если у вас:

  • свой уникальный шаблон;
  • кастомные компоненты;
  • решения, не поддерживаемые более разработчиками, но необходимые вам для работы (например, решение «Аспро Медицинский центр 2.0» официально не поддерживается более разработчиком, и к нему не выпускаются никакие обновления);
  • вносились правки в ядро;
  • нет желания или возможности продлевать решение по какой-либо другой причине, например, потому что слишком дорого.

С этим нам чаще всего и приходится работать.

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

Итак, процесс:

1. Создаем полную резервную копию сайта.

2. Обновляем ядро, как и в рекомендуемом способе. Если вы вносили изменения в ядре или штатных компонентах, то вам необходимо перенести все измененные файлы в папку local.

3. Переходим в установленные решения и обновляем все, что можно обновить. Если и сторонние решения правили, то переносим все изменения и доработки в local-папку.

4. Далее включаем вывод ошибок в настройках, файл /bitrix/.settings.php.

5. Затем настраиваем хостинг и активируем 8-ку.

6. После переходим на сайт и видим ошибки. Читаем текст ошибки и вносим изменения в файлы указанные в тексте ошибки. Информации по типовым ошибкам море. Вот лишь несколько примеров, которых будет достаточно для практически любого сайта:

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

  • Если вы не видите ошибок, а видите белый экран, ищите их в исходном коде (Ctrl + U).
  • Просмотрите все страницы вашего сайта. На каждой странице может использоваться разный функционал и если у вас типовая услуга, то это не значит, что, устранив проблемы на одной странице, вы избавитесь от других.
  • Обязательно проверьте интерактив сайта, попробуйте произвести все функциональные тесты: отправить форму, проверить калькуляторы, воспользоваться поиском по сайту.
  • Проверьте ошибки в консоли (F12).
  • Проведите проверку системы штатным инструментом /bitrix/admin/site_checker.php?lang=ru. Здесь может оказаться много подсказок в случае проблем.

Описанное выше может решить штатный администратор сайта. Углубляться детальнее нет смысла. Более сложные моменты требуют специальных знаний.

Таким способом мы уже перевели на новые рельсы практически всех наших клиентов. А теперь решили поделиться инструкцией. И если понадобится, готовы помочь реализовать ее.

66
реклама
разместить
Начать дискуссию
Массовое кидалово. История про собеседование.

Когда-то я работал в СтеклоДоме и из пары человек мы быстро выросли в инхаус на 10+ человек.
Нанимаем верстальщика. Посмотрели анкеты, тестовые задачи. Назначаем встречу. Приходим я и разработчик Антон. На месте дожидается HR. Встреча, допустим, в 16-00.
Сидим, заготовили вопросы, ждём. 16-00. Тишина. 16-10 тишина.

Массовое кидалово. История про собеседование.
1717
1111
33
11
Привет. История с другой стороны. Нанимаюсь в одну фирму, еду из другого города. Чтобы я успел должны сойтись звезды и не подвести несколько видов транспорта. Договариваюсь на 10 утра. Успеваю. У работодателя на месте нет ни эйчара (он говорил, что подойдет позже), ни специалиста, который должен меня встречать. Жду полчаса, приходит специалист. Всё показывает, говорит об условиях, выясняется, что они отличаются от озвученных ранее. Время близится к обеду, звоню эйчару, чтобы поговорить вживую, выясняется, что его не будет сегодня. Занавес.
В Бангкоке ЧП после землетрясения — высотки эвакуируют, работу метро и торги на таиландской бирже ограничили

Правительство Таиланда предупредило о возможных повторных толчках.

88
66
33
«Подружка»: обновление дизайна сайта и мобильного приложения от ONY

Бренд обратился к нам в ONY с задачей разработать дизайн и спроектировать одновременно мобильное приложение и сайт. Основная цель — повысить онлайн-продажи, используя новый стиль, улучшить пользовательские сценарии и добавить новые функции в соответствии с обновленной стратегией бренда.

ФАС запросила у интернет-провайдеров информацию о препятствовании доступу в дома застройщика ПИК

В случае выявления нарушений, служба «примет меры».

1515
44
Вот это новость. Всегда был монопольный провайдер в ЖК пика, самолёта и пр и жильцы жаловались на это, а тут вдруг ФАС спохватился что оказывается есть такая практика!
Минцифры определило порядок оплаты сбора за интернет-рекламу — «не позднее пятого числа третьего месяца квартала, следующего за платёжным периодом»

Контролировать платежи будет Роскомнадзор.

Фото РБК
1818
33
Господи, как же задолбали 😡
День 1129: первый полёт «полностью импортозамещённого» SSJ 100 запланирован на апрель 2025 года

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

Фото ТАСС
1111
66
22
Расскажите почему SSJ, которых довольно много в авиапарке России и с которыми нет катастроф - плохо.
Алгоритмы - это не страшно(Python)
Алгоритмы - это не страшно(Python)
«День в стиле Ghibli»: в соцсетях превращают мемы, фотографии политиков и фильмы в аниме

Способность воссоздавать стиль Хаяо Миядзаки заметили у нового генератора картинок в ChatGPT.

4343
1616
1313
33
33
Это лучшая реклама студии Ghibli, которую можно придумать. Пошел пересмотрю принцессу Мононоке.
Арт-директор WB: секрет продающей карточки и дизайн, который приносит миллионы

Свежий выпуск подкаста JVO: Дмитрий Матвеев, экс-арт-директор Wildberries.

1111
33
реклама
разместить
Кейс: Снизили стоимость подписчика до 0,93 евро, и теперь у клиента 95% продаж — через Telegram Ads

Как фото человека и простой текст помогли снизить расходы на подписчика в два раза.

Кейс: Снизили стоимость подписчика до 0,93 евро, и теперь у клиента 95% продаж — через Telegram Ads
3030
«Наша структура — блокчейн в ритейле»: менеджер дискаунтера «Светофор» — об управлении, проверках и конкуренции

Несколько тезисов из интервью РБК с главой сети в Центральном федеральном округе Еленой Захаренко.

Захаренко. Источник фото: РБК
88
44
22
Бизнес модель интересная.... Но какой же мусор они продают под видом еды для людей, это конечно ещё найти такое надо.
KFC выпустила рекламу, в которой человек стал куриным крылышком после крещения в подливке, — теперь сеть обвиняют в богохульстве и пропаганде каннибализма

Кампания для британского рынка ориентирована на зумеров.

Кадр из ролика
8080
1212
88
66
55
11
11
Если честно - отвратительно на мой взляд Идёт отсылка к крещению и т.п.