Найти в Дзене
Битрикс24 изнутри

Не работает BX_SUPPORT_MODE?

Оглавление

Представьте ситуацию: новый программист получил доступ к вашему боевому проекту - маленькому сайту на Битрикс или порталу еще хуже - Битрикс24 (коробочная версия), нервничая он удалил папку с важным модулем, например ui или bizproc. Что делать? Восстанавливать из бекапа? Долго. Пытаться скачать его из другой версии? Может не подойти из-за разницы в версиях.

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

Режим BX_SUPPORT_MODE для перезагрузки исходных кодов
Режим BX_SUPPORT_MODE для перезагрузки исходных кодов

Компания 1С-Битрикс уже позаботилась о такой возможности (видимо бывали случаи) и в модуле обновлений разработчики предусмотрели специальную возможность: Перезагрузки файлов модуля.

Замечу: именно перезагрузка файлов, фактической переустановки или распаковки (копирование сопутствующих файлов в служебные директории) не происходит. Только фактическая замена в /bitrix/modules/

Возможность получилось фантастической, но не менее опасной - ее решили скрыть от глаз обычных администраторов и закрыли из общего доступа.

Как можно было ей воспользоваться?

Достаточно не сложно для разработчика, но не очевидно для пользователя:

  • Перейти в раздел "Обновление платформы" (Рабочий стол -> Marketplace -> Обновление платформы)
  • Добавить в ссылку GET-параметр: BX_SUPPORT_MODE=Y
  • Через запятую перечислить коды модулей (не нужно помнить, все доступные модули будут написаны)
  • Нажать на кнопку и ждать окончания загрузки

Можно воспользоваться лайф-хаком для руской версии: сразу перейти в браузере по ссылке:

/bitrix/admin/update_system.php?lang=ru&BX_SUPPORT_MODE=Y

Так что не так?

Недавно я, как и многие другие обнаружил, что переходя по этой ссылке ничего не происходит. Не появляется привычный список модулей и уж точно нет перезагрузки. Расстроившись я стал копать глубже, ведь не может же так быть, чтобы полезную возможность просто так убрали из продукта с "сохранением полной обратной совместимости".

Проведя небольшое исследование, я обнаружил, что возможность по-прежнему существует, однако в нее были внесены небольшие изменения:

  1. Теперь параметр называется BX_SUPPORT_MODEX
  2. Доступен только при наличии действующей лицензии

И действительно, по новой ссылке все прекрасно открывается:

/bitrix/admin/update_system.php?lang=ru&BX_SUPPORT_MODEX=Y

Пользуйтесь на здоровье!