Есть сайт на Битрикс Бизнес, виртуальная машина, php 5.6. Версия 14. Работал в win-1251
Купили новую лицензию Битрикс Малый бизнес (редакция ниже). Версия 18, последняя т.е. Логично, что она будет просить php 7. Хотим utf-8.
Какой алгоритм обновления?
Ведь если сразу подсунуть ключ, сайт упадет и обновление скорее всего корректно не встанет из-за ошибки php.
Если сначала обновить PHP, то сайт не запустится и ключ ему не подсунуть и не обновить.
Когда и в какой момент изменить кодировку сайта, до или после обновления?
Еще не совсем понятно:
у меня есть другой домен, на котором копия оригинального сайта, на этой копии я делаю тестирования и разработки.
Логично, что можно провести обновление на копии, и если все будет хорошо, залить копию на оригинальный сайт.
Вопрос - как не слететь с лицензии с этими обновлениями на тестовых копиях?
(форум битрикса, как умер 10 лет назад, так и до сих пор тишина, даже на простые вопросы нет ответов)
Важно учитывать какие кастомизации выполнялись на сайте с момента последнего обновления и готовность кастомного кода сайта к переход на другую версию php так как актуальная версия Битрикс требует актуальной версии php.
Порядок действий и что нужно учитывать:
1. Активировать лицензию на основной версии сайта без установки обновлений.
2. Развернуть тестовую копию сайта на площадке с настройками соответствующими основному сайту
3. Выполнить проверку "Монитор качества" на предмет модификации файлов ядра Битрикс.
3.1. При обнаружении модификаций проверить что это - кастомный код который нужен для работы проекта и написанный в недопустимом месте или ложно срабатывание инструментов проверки сайта.
3.2. Выявленный кастомый код перенести в корректное место - отдельные компоненты или файлы обработчики где этот код не будет затерт при обновлении.
4. На тестовой копии выполнить обновления до 17.1 или 17.5. На этом этапе могут быть выявлены первые трудности.
4.1. Компоненты оформления заказа переходят на новое API и при наличии кастомных обработчиков в шаблонах оформления заказа будут выявлены ошибки.
4.2. Серьезные изменения в работе с JS Битрикс также нужно проверить готовность сайта к работе с новым JS
5. Выполнить конвертации таблиц базы интернет магазина и перейти на ядро D7.
6. Скорее всего возникнут проблемы в работе функционала оформления заказа. Вреенно можно перевести оформление заказа в режим совместимости со старым API.
7. Если на сайте была подключена 1С, службы оплаты, службы доставки - на этом этапе они отавалятся так как формат работы Битрикс с оплатами изменился.
8. Если все работает обновляем Битрикс до 18.1 и проверяем функционал
9. Переключаем работу сайта на php 7.0 (можно сразу на php 7.1, но лучше решать проблемы поэтапно)
10. После переключения версии php проверяем корректность работы кастомного кода на новой версии и при необходимости переписываем код на совместимый с актуальной версией php
Это общий сценарий. Каждый случай индивидуален и друдозатраты по задаче зависят от качества разработки сайта, качества кастомного кода. Но даже при корректной разработке при таком значительном обновлении многие сторонние модули установленные на сайте потребуют доработки или как минимум обновления.
Задача может потребовать от 10ч. до 200ч и больше. Это зависит от количества и качества кастомного кода (от размера технологического долга проекта). В некоторых случаях приходится весь "костыльный" кастомный код перерабатывать в модули и компоненты.
Самый запущенный случай который встречал - это технологический долг в 500-600ч.
было принято решение запускать новый проект и постепенно в нем корректно реализовывать весь кастомный функционал без потери возможности устанавливать обновления.
Не запускайте свои проекты - следите за тем что бы технические специалисты при выполнении задача соблюдали требования Битрикс к реализациям и сохранялась возможность устанавливать обновления.
"Вопрос - как не слететь с лицензии с этими обновлениями на тестовых копиях?" - на тестовой копии сайта в настройках главного модуля включить режим разработки. Это поможет избежать блокировки сайта. И блокировка это не проблема - пишете в ТП Битрикс указываете лицензионный ключ, описывается какая из копий для чего развернута с указанием домена и просите разблокировать.
Написано
Антон
@anton99zel Автор вопроса, куратор тега 1С-Битрикс
в настройках главного модуля включить режим разработки
Покажите скрин?
Я такой настройки никогда не видел
Антон, это не из-за типа лицензии, а из-за версии Битрикс которая используется. В старых версиях такого нет, в актуальных 17.5-18.1 - есть
Написано
Антон
@anton99zel Автор вопроса, куратор тега 1С-Битрикс
29а класс средней школы №7
Рассказываю как обновился с 14 Бизнес по 18 малый бизнес - битрикс с переходом на php7 и Марию10.
---
1. Ввел новый ключ, но не обновлял. Сделал резервную копию и развернул ее на другом сервере с такой же конфигурацией.
2. Провел проверки на предмет модификации ядра.
3. Сменил кодировку с 1251 на utf 8 через скрипт
4. Запустил обновление
5. Частично обновилось и упало с ошибкой на версию php
6. Поднял php до версии 7.3
7. Продолжил обновление
8. Опять упало, так как нужно было пересканировать, переконвертировать магазин, скидки, доставки....
9. Затем опять обновление запустил
10. Поднял версию мускул с 5 до 10
11. Сделал резервную копию и развернул ее на боевом сервере
12. Глобальных правок не было. Местами лишь заменил устаревшие функции.
Во время обновления Битрикс ругался на модули не входящие в лицензию. Но мы ими не пользовались все равно. Удалили.
Все работает. По времени ушло примерно 20 часов. Больше всего времени занимало упаковка, распаковка, скачивания, закачивание архивов.
В вашем случае речь идёт не об обновлении, а о создании новой версии сайта на новой лицензии. В Битриксе нет downgrade, т.е. понижение лицензии. Вы не сможете ввести новый ключ вместо старого.
Вам нужно создать новую версию сайта на поддомене в utf-8, на версии РНР 7.1, активировать новую лицензию на новом сайте, перенести всю структуру и данные со старого сайта и после этого либо поменять сайты, либо перенаправить домен (А-запись)
Антон, написали бы свой ответ и отметили бы решением, раз разобрались, тогда бы сошли за умного человека.
Я написал, то что знал, и ранее ключ нельзя было ввести новый, потом это делалось через тех. поддержку, а сейчас действительно ключ можно ввести.
П.С. Вы я смотрю любитель сам себе отвечать, снимите корону и ЧСВ свое к земле спустите.
Написано
Антон
@anton99zel Автор вопроса, куратор тега 1С-Битрикс
Ярослав Александров, Я сам себе отвечаю, потому, что это может пригодится другим пользователям. А корона пусть будет. Мне в ней хорошо. А свой ответ я написал.
Когда нельзя было ввести ключ? 14 версия - версия лохматого года. Т.е. относительно давно можно было заменять ключ.
Антон, Во-первых, если вы что-то узнали, нормальные люди пишут: "Коллега, у вас устаревшая информация, вот сейчас так", я бы вам спасибо сказал, но вы же пишите человеку, что поставили бы дизлайк, хотя это я бы поставил всему вашему профилю за 300 вопросов огромный дизлайк и отрицательную карму.
Вам виднее, но даже на битрикс форуме народ 2019 годом пишет, что процедуры понижения редакции нет https://dev.1c-bitrix.ru/support/forum/forum6/topi...
Евгений Смолин, Эксперт пишет "Потом обращаетесь в тех.поддержку с просьбой понизить редакцию и сможете дальше обновляться уже на условиях под новой редакцией. "
Написано
Антон
@anton99zel Автор вопроса, куратор тега 1С-Битрикс
Ярослав Александров, не путайте.
Понижение редакции в рамках одного ключа невозможно без запроса в техподдержку.
Если покупается новый ключ, то понижение редакции возможно (я вообще не вижу причин, почему это невозможно). https://dev.1c-bitrix.ru/support/forum/messages/fo...
Ну, и про 300 вопросов: умен тот, кто спрашивает).