Доработка и оптимизация
Обновление ядра и модулей Битрикса
Обновляем 1С-Битрикс на действующем сайте до актуальной версии: ядро, модули Маркетплейса, при необходимости редакцию. Работаем на копии сайта, а на боевой переносим то, что уже прошло проверку по чек-листу.
сначала обновляем копию, потом боевой сайтТочная смета - после брифа.
Кому подходит
Годами не обновлялись
В админке висит уведомление об обновлениях, а ставить их некому
Нужен модуль или PHP 8
Новая версия модуля, интеграция или хостинг требуют ядро свежее того, что стоит
Обновление не встает
Запуск обновления обрывается с ошибкой или ломает страницы, и его откатывают
Какие задачи решаем
Что входит в работу
Копия сайта на тестовом сервере
Поднимаем полную копию с базой и файлами, обновление идет на ней, боевой сайт не трогаемПоиск правок в ядре
Сверяем файлы в каталоге bitrix с эталоном версии и собираем список мест, которые обновление затретПеренос правок в свой код
Найденные доработки переносим в шаблон сайта или в свой модуль, чтобы обновление их не стиралоПроверка требований платформы
Смотрим версии PHP и MySQL, расширения и лимиты сервера, которых требует целевая версия ядраОбновление по шагам
Ставим обновления порциями и фиксируем версию после каждой, чтобы видеть, на каком шаге сломалосьОбновление модулей Маркетплейса
Обновляем установленные решения, а по тем, где обновлений больше нет, показываем варианты заменыСмена редакции
Если задача требует редакцию старше, переводим сайт на нее и переносим настройки модулейСписок сломанного и правки
После обновления проходим сайт по чек-листу, собираем список ошибок и правим совместимостьПеренос на боевой в окно
Повторяем шаги на боевом сайте в согласованное время, рядом держим копию для возврата назадНаблюдение после переноса
Неделю смотрим логи ошибок, обмены с 1С и отправку писем, правим то, что всплыло на трафикеЭтапы работы
Технологии и интеграции
Ядро Битрикса
Обновление через систему обновлений по шагам, с фиксацией версии после каждого
Модули Маркетплейса
Проверяем совместимость установленных решений с целевой версией ядра
Редакции Битрикса
Переход на редакцию старше, если ее требуют каталог, обмены или права доступа
PHP 8 и сервер
Версии PHP и MySQL, расширения и лимиты, которых требует новое ядро
Тестовый сервер
Полная копия сайта с базой, где обновление прогоняется до боевого
Git
Правки шаблонов и своего кода идут коммитами, прежний вариант можно вернуть
Часто задаваемые вопросы
Цена складывается из того, насколько сайт отстал от актуальной версии и сколько в нем правок ядра: обновление с версии годичной давности, где в каталоге bitrix ничего не правили, укладывается в несколько часов. Сайт, который не обновляли пять лет и где компоненты правились напрямую, сначала требует перенести доработки, а потом чинить совместимость - поэтому чем дольше не обновлялись, тем дороже догонять. Отдельно считаются смена редакции и переход на PHP 8, если он нужен целевой версии. Смету присылаем после прогона на копии: к этому моменту виден список сломанного, а не предположения.
Такое встречается на сайтах, которым несколько лет, и обновление такие правки затрет, поэтому мы сначала их находим. Сверяем файлы в каталоге bitrix с эталоном версии, собираем список расхождений и переносим нужное в шаблон сайта или в свой модуль. После этого обновление ставится, а доработки остаются на месте и переживают следующие обновления. Если часть правок уже не нужна, скажем об этом в списке - переносить их смысла нет.
Сам по себе сайт от старого ядра не остановится, но упирается в три вещи. Новые модули и интеграции требуют ядро не старше определенной версии, часть уязвимостей закрывается только обновлением, а хостинг рано или поздно снимает старые версии PHP. Лечение сайта после взлома обычно упирается в то же старое ядро, поэтому обновление там идет в паре с закрытием точки входа. Решать вам: мы показываем, какая версия стоит, чего она уже не поддерживает и сколько стоит догнать.
Короткое окно нужно: на боевом сайте обновление ставится с закрытым доступом, чтобы посетители не попали на полуобновленный сайт. Длину окна называем после прогона на копии - там видно, сколько шагов и правок реально потребуется. Окно согласуем на время с малым трафиком, а рядом держим копию базы и файлов, чтобы вернуть прежнюю версию.
Обновление трогает платформу: версию ядра, модули, редакцию. Внешний вид сайта остается прежним, и если верстка вынесена в свой шаблон, посетитель разницы не увидит. Оформление страниц и новые разделы - это редизайн, мелкие правки по обращениям - поддержка. Когда нужно и то и другое, обновление идет первым: собирать новый дизайн на ядре, которое вот-вот придется обновлять, значит делать работу дважды.
Нужны доступы к хостингу и в админку с правами администратора, данные лицензии Битрикса и человек, с которым согласуем окно обновления боевого сайта. Если лицензия просрочена, обновления недоступны технически: продление оплачивается напрямую в 1С-Битрикс и в нашу смету не входит. Еще пригодится список того, что на сайте считается важным - обмены с 1С, личный кабинет, расчет доставки: это проверяем в первую очередь.
Отдаем список: с какой версии на какую перешли, что правили и где лежат перенесенные доработки. Неделю после переноса смотрим логи ошибок и обмены, правим то, что всплыло на живом трафике. Первые 30 дней ошибки по нашей части правим бесплатно. Чтобы сайт не отставал снова, обновления можно вести по договору поддержки - там они идут регулярной работой, а не разовым проектом.