• Гость в разделе 1С-Битрикс все ссылки на модули, шаблоны и т.д. помещаем под хайд не менее 150 реакций.
  • Не создавайте несколько учетных записей, вы будете заблокированы! Для получения дополнительной информации о правилах, ограничениях и многом другом посетите страницу «Помощь».
    Нашли неработающую ссылку? Используйте кнопку «Жалоба»!

1С-Битрикс Скрипт Скрипт нативного обновление модулей БЕЗ КЛЮЧА!

Регистрация
02.06.21
Донат
50.00 ₽
Сообщения
18,041
Решения
2
Реакции
22,736
Веб-сайт
itnull.info
Что делает скрипт?
Он позволяет скачать модули и дельта обновления к ним используя ключ битрикса.
Все обновления скачиваются в папку /bitrix/updates в особый формат ".upd"
Так как модуль и обновления это всего лишь файл его становиться легко переносить, передавать, делиться.
Но самое главное, что установка обновлений в скрипте происходит ТОЧНО так же как и в битриксе при использовании АКТИВНОГО КЛЮЧА.

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

Теперь все просто, достаточно нажать на кнопку установить напротив свеженького дельта обновления модуля и тут же будет все установлено: раскопированы новые файлы, выполнены нужные запросы к БД, запущены служебные скрипты.

Я прошу всех релизеров, переходить на данный формат.
Публиковать не заархивированные папки с модулем, а именно файлы ".upd", получая их при помощи скрипта - это формат битрикса и этим все сказано.

В связи с потоком вопросов, типо: "как поставить?" и "почему у меня не получается?", предлагаю более детальную схему работы скрипта. Если у вас уже установлен 1С-Битрикс, то можно начать с пункта 3.

  1. Установка Битрикса (Демо, либо из исходников)
  2. В админке делаем обновление ядра — этот шаг не является обязательным
  3. Скрипт нативной установки распаковываем любую папку в корень сайта. Сами решения в формате дельт распаковываем в /bitrix/updates/
  4. Запускаем первый раз Скрипт нативной установки и патчим ядро (происходит автоматически, этот шаг является обязательным);
  5. Сервер обновления меняем на localhost
  6. Далее, скриптом Скрипт нативной установки устанавливаем в систему решение, последовательно, не нарушая сквозную нумерацию. Помните - скрипт заменяет процедуру покупки и внесения купона в систему, а так же загрузку решения из Маркетплейс
  7. Вносим в файл not_mine.php (он появится в корне сайта сразу после патча ядра) в массив все решения, которые будем прятать, например, при желании спрятать aspro.kshop вносим это вместо 'module.name1' и получаем 'aspro.kshop'.
  8. Инсталлируем раскопированное скриптом решение в Админке системы - в закладке Маркетплейс → Установленные решения.
  9. Если процедура установки решения того требует, то запускаем Визард установки решения или на главной странице жмем кнопку "Опробовать новое решение".

NEW* Новая версия скрипта v2.4.1, совместимость с PHP 8.1 и выше.
  • Исправлено отображение установки.
  • Возможность изменять сервер обновлений.
  • Добавление/удаление модулей в/из not_mine.php

Измененная инструкция после обновления скрипта до версии 2.4.0 и выше:

Последняя версия скрипта, совместимость с PHP 8.1


Перед всеми действиями делайте резервные копии

Теперь скрипт умеет скрывать собственные модули, которые не входят в вашу редакцию.
Достаточно внести название модуля в список файла "not_mine.php" и запустить скрипт "get_function.php" для автоматического внесения изменений.

Скрипт дополнительно патчит файл: (искать по слову PATCH)
Код:
Расширить Свернуть Скопировать
/bitrix/modules/main/classes/general/update_client.php

Изменения в файле: get_function.php
Код:
Расширить Свернуть Скопировать
foreach($arModules as $val){
$arClientModules[$val.'-not_mine'] = $arClientModules[$val];
unset($arClientModules[$val]);
}

Заменяем на:
Код:
Расширить Свернуть Скопировать
foreach($arModules as $val){
if(isset($arClientModules[$val]))unset($arClientModules[$val]);
}

Устаревшие версии
Updater_v (2.4.1) php 7.4/8.0

Updater_v (2.4.0.1 beta)

Updater_v (2.4.0.5 beta) newDesign

Updater_v (2.4.003) Максимальная длинна ключа теперь составляет 30 символов

Updater_v (2.4.0 beta)

Updater_v (2.3.0 beta)

1. Функция session_start была вызвана до запуска ядра Bitrix. Или когда скрипт перекидывает на главную страницу, решение:
В файле get_update.php найти session_start(); заменить на //session_start();

2. При установке решения, бесконечная загрузка, проблема наблюдается редко, решение:
Включить режим правки

3. В скрипте обнаружена еще одна проблема, которая больше касается решений от Аспро, такие как aspro.max и так далее.
Есть есть глобальная функция "clear". Как минимум с решением аспро максимум на обновлении 2.5.3 уходит в ошибку, т.к. в файлах обновления модуля есть функция с таким же названием, и php улетает в ошибку already declared.

Пример ошибки:
PHP:
Расширить Свернуть Скопировать
2026-01-22 20:06:26 - Host: localhost:80 - FATAL - [ErrorException] E_COMPILE_ERROR
Cannot redeclare clear() (previously declared in /home/bitrix/ext_www/localhost/bupd/get_function.php:24) (0)
/home/bitrix/ext_www/localhost/bitrix/updates/update_aspro.max.2.5.3.delta.upd/aspro.max/updater2.5.3.php:439

Решение:
Нужно изменить название функции clear в файлах get_update.php и get_function.php.
 
Последнее редактирование:
Реакции:
  • Мне нравится
Реакции: kroki, AlexBeleckiy, sl.max и 86 других
И еще моменты. Проблема с Б24 возникает после обновы main (25.600.0) и всего остального (от 09.09.25) на текущие (от 31.10.25), последние обновления ИМ+ЦРМ. Если не обновлять - то все нормально. Патч использую 2.4.002.
 
Реакции:
Реакции:
  • Мне нравится
Реакции: Werewolf1987 и zhenia-b
Чтобы не было ошибок, надо в файле изменить get_function.php
код:
Расширить Свернуть Скопировать
// Вместо
require($_SERVER["DOCUMENT_ROOT"]."/bitrix/modules/main/classes/general/update_class.php");
require($_SERVER["DOCUMENT_ROOT"]."/bitrix/modules/main/classes/general/update_client_partner.php");

// Используйте
require_once($_SERVER["DOCUMENT_ROOT"]."/bitrix/modules/main/classes/general/update_class.php");
require_once($_SERVER["DOCUMENT_ROOT"]."/bitrix/modules/main/classes/general/update_client_partner.php");
 
Реакции:
Чтобы не было ошибок, надо в файле изменить get_function.php
код:
Расширить Свернуть Скопировать
// Вместо
require($_SERVER["DOCUMENT_ROOT"]."/bitrix/modules/main/classes/general/update_class.php");
require($_SERVER["DOCUMENT_ROOT"]."/bitrix/modules/main/classes/general/update_client_partner.php");

// Используйте
require_once($_SERVER["DOCUMENT_ROOT"]."/bitrix/modules/main/classes/general/update_class.php");
require_once($_SERVER["DOCUMENT_ROOT"]."/bitrix/modules/main/classes/general/update_client_partner.php");
А с какими ошибками столкнулись ?
 
Реакции:
И еще моменты. Проблема с Б24 возникает после обновы main (25.600.0) и всего остального (от 09.09.25) на текущие (от 31.10.25), последние обновления ИМ+ЦРМ. Если не обновлять - то все нормально. Патч использую 2.4.002.
Да, действительно, но обоих обновленных проектах не работает - ошибка - HTTP ERROR 500
 
Реакции:
Реакции:
Подскажите пожалуйста, для обновления через этот скрипт лицензия Bitrix должна быть активна, или если больше года прошло с момента активации лицензии, скрипт все равно установит тему на сайт?
 
Реакции:
Подскажите пожалуйста, для обновления через этот скрипт лицензия Bitrix должна быть активна, или если больше года прошло с момента активации лицензии, скрипт все равно установит тему на сайт?
Лицензия битрикс не нужна
 
Реакции:
Лицензия битрикс не нужна
Да у меня есть лицензия двухлетней давности. Просто балуюсь на тестовом сайте, пытаюсь Аспро Максимум натянуть через скрипт. Запускаю скрипт - вылетает на 404 страницу. Два года назад тоже самое делал, все работало. Видимо что-то подзабыл :(
 
Реакции:
NEW* Новая версия скрипта нативного обновление модулей v2.4.1, совместимость с PHP 8.1 и выше.

За обновление и доработку отдельное спасибо @young
  • Исправлено отображение установки.
  • Возможность изменять сервер обновлений.
  • Добавление/удаление модулей в/из not_mine.php
Архив в первом посте.


1768109610101.webp

1768109622401.webp
 
Реакции:
  • Мне нравится
Реакции: Artur_ и young
Здравствуйте. Успешно пользовался скриптом до 20.12.2025. Сегодня пытаюсь перейти по адресу - открывается просто главная страница сайта. Обновил скрипт до 2.4.1 - не помогло. Текущая установленная версия битрикс: 25.750.0
 
Реакции:
Здравствуйте. Успешно пользовался скриптом до 20.12.2025. Сегодня пытаюсь перейти по адресу - открывается просто главная страница сайта. Обновил скрипт до 2.4.1 - не помогло. Текущая установленная версия битрикс: 25.750.0
Добрый день, это пробовали ?

1. Функция session_start была вызвана до запуска ядра Bitrix. Или когда скрипт перекидывает на главную страницу, решение:
В файле get_update.php найти session_start(); заменить на //session_start();
 
Реакции:
Добрый день, это пробовали ?

1. Функция session_start была вызвана до запуска ядра Bitrix. Или когда скрипт перекидывает на главную страницу, решение:
В файле get_update.php найти session_start(); заменить на //session_start();
Спасибо, помогло. И я ведь читал это и всё равно не заметил часть фразы про главную страницу
 
Реакции:
В скрипте обнаружена еще одна проблема, которая больше касается решений от Аспро, такие как aspro.max и так далее.
Есть есть глобальная функция "clear". Как минимум с решением аспро максимум на обновлении 2.5.3 уходит в ошибку, т.к. в файлах обновления модуля есть функция с таким же названием, и php улетает в ошибку already declared.

Пример ошибки:
PHP:
Расширить Свернуть Скопировать
2026-01-22 20:06:26 - Host: localhost:80 - FATAL - [ErrorException] E_COMPILE_ERROR
Cannot redeclare clear() (previously declared in /home/bitrix/ext_www/localhost/bupd/get_function.php:24) (0)
/home/bitrix/ext_www/localhost/bitrix/updates/update_aspro.max.2.5.3.delta.upd/aspro.max/updater2.5.3.php:439

Решение:
Нужно изменить название функции clear в файлах get_update.php и get_function.php. За подсказку спасибо @alex483981
 
Реакции:
Здравствуйте. Можно ли через новый скрипт обновлять модули от шаблона?
 
Реакции:
Доброго дня.
Кто знает? Подскажите, пожалуйста.
Обновил скрипт, залил новый модуль, жму установить, модуль появился в админке, но только первая версия. Т.е. не устанавливает до последней версии модуля и не появляется кнопка "УСТАНОВИТЬ" напротив версии как было раньше.
Как устанавливать теперь?
 
Реакции:
Доброго дня.
Кто знает? Подскажите, пожалуйста.
Обновил скрипт, залил новый модуль, жму установить, модуль появился в админке, но только первая версия. Т.е. не устанавливает до последней версии модуля и не появляется кнопка напротив версии как было раньше.
Как устанавливать теперь?
Приветствую, из not_mine удален ?
 
Реакции:
Приветствую, из not_mine удален ?
Этого модуля не было в not_mine. Но переименовал было файл появились кнопки установить, при установке по порядку все равно жмешь установить, написано установлено, а по факту кнопка установить все равно отображается.

При установке модуля через админ панель еще так ругается:

[Error]
Non-static method agInstaHelperCssinliner::addGadgetToDesctop() cannot be called statically (0)
/home/*/**/public_html/bitrix/modules/arturgolubev.cssinliner/install/index.php:59
#0: arturgolubev_cssinliner->InstallFiles()
/home/*/**/public_html/bitrix/modules/arturgolubev.cssinliner/install/index.php:72
#1: arturgolubev_cssinliner->DoInstall()
/home/*/*/public_html/bitrix/modules/main/admin/partner_modules.php:249
#2: require_once(string)
/home/*/*/public_html/bitrix/admin/partner_modules.php:2

Не знакомо случаем?

Что-то все сломалось у меня)
 
Реакции:
    Сейчас эту тему никто не читает.

Похожие темы

Частично перестает работать сайт после обновления 1С-Битрикс 1С-Битрикс обновил версии...
Ответы
0
Просмотры
2K
Назад
Сверху Снизу