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

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

Регистрация
02.06.21
Донат
50.00 ₽
Сообщения
16,869
Решения
2
Реакции
20,560
Веб-сайт
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. Если процедура установки решения того требует, то запускаем Визард установки решения или на главной странице жмем кнопку "Опробовать новое решение".

Измененная инструкция после обновления скрипта до версии 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. При установке решения, бесконечная загрузка, проблема наблюдается редко, решение:
Включить режим правки
 
Последнее редактирование:
Реакции:
  • Мне нравится
Реакции: Anatoliy852, gremk123, ilay и 83 других
При запуске: get_update.php

Вот такая ошибка:
Расширить Свернуть Скопировать
Deprecated: Attention! The session_start function was called before the Bitrix Kernel was started. The session will be closed to avoid errors. It's strongly recommended to avoid session usage before initializing the Bitrix Kernel. in ***/public_html/bitrix/modules/main/lib/session/legacy/healerearlysessionstart.php on line 21[RuntimeException]


Could not start session because headers have already been sent. "***/public_html/bitrix/modules/main/lib/session/legacy/healerearlysessionstart.php":21. (0)

***/public_html/bitrix/modules/main/lib/session/session.php:144

#0: Bitrix\Main\Session\Session->start()

    ***/public_html/bitrix/modules/main/lib/session/kernelsessionproxy.php:47

#1: Bitrix\Main\Session\KernelSessionProxy->start()

    ***/public_html/bitrix/modules/main/include.php:181

#2: require_once(string)

    ***/public_html/bitrix/modules/main/include/prolog_before.php:19

#3: require_once(string)

    ***/public_html/bitrix/modules/main/include/prolog.php:10

#4: require_once(string)

    ***/public_html/bitrix/header.php:1

#5: require(string)

    ***/public_html/upd/get_update.php:3


Есть идеи как побороть?
 
Реакции:
При запуске: get_update.php

Вот такая ошибка:
Расширить Свернуть Скопировать
Deprecated: Attention! The session_start function was called before the Bitrix Kernel was started. The session will be closed to avoid errors. It's strongly recommended to avoid session usage before initializing the Bitrix Kernel. in ***/public_html/bitrix/modules/main/lib/session/legacy/healerearlysessionstart.php on line 21[RuntimeException]


Could not start session because headers have already been sent. "***/public_html/bitrix/modules/main/lib/session/legacy/healerearlysessionstart.php":21. (0)

***/public_html/bitrix/modules/main/lib/session/session.php:144

#0: Bitrix\Main\Session\Session->start()

    ***/public_html/bitrix/modules/main/lib/session/kernelsessionproxy.php:47

#1: Bitrix\Main\Session\KernelSessionProxy->start()

    ***/public_html/bitrix/modules/main/include.php:181

#2: require_once(string)

    ***/public_html/bitrix/modules/main/include/prolog_before.php:19

#3: require_once(string)

    ***/public_html/bitrix/modules/main/include/prolog.php:10

#4: require_once(string)

    ***/public_html/bitrix/header.php:1

#5: require(string)

    ***/public_html/upd/get_update.php:3


Есть идеи как побороть?
Функция session_start была вызвана до запуска ядра Bitrix. Рекомендую обратиться в поддержку, должны решить если адекватный хостинг
 
Реакции:
Функция session_start была вызвана до запуска ядра Bitrix. Рекомендую обратиться в поддержку, должны решить если адекватный хостинг

Если смотреть файл get_update.php:
Расширить Свернуть Скопировать
<?php
session_start();
require($_SERVER["DOCUMENT_ROOT"]."/bitrix/header.php");
require("./get_function.php");
require("./get_const.php");
// Patch 2.4.002 UP maxlength
//Редериктор на главную страницу для пользователей без прав администратора
global $USER;
if(!$USER->IsAdmin())
    LocalRedirect('/');

То и правда до вызова ядра есть session_start(); - зачем именно непонятно - удаление/комментирование мне помогло.
 
Реакции:
Если смотреть файл get_update.php:
Расширить Свернуть Скопировать
<?php
session_start();
require($_SERVER["DOCUMENT_ROOT"]."/bitrix/header.php");
require("./get_function.php");
require("./get_const.php");
// Patch 2.4.002 UP maxlength
//Редериктор на главную страницу для пользователей без прав администратора
global $USER;
if(!$USER->IsAdmin())
    LocalRedirect('/');

То и правда до вызова ядра есть session_start(); - зачем именно непонятно - удаление/комментирование мне помогло.
Помогло, спасибо!
 
Реакции:
  • Мне нравится
Реакции: ksen-nn
Можно ли установить шаблон на активную лицензию битрикс?
 
Реакции:
Реакции:
В первом посте, добавлены решения некоторых проблем, связанных со скриптом нативной установки, буду дополнять.
 
Реакции:
  • Мне нравится
Реакции: lovi_dzen
Подскажите пожалуйста, сейчас установлен аспро оптимус 1.7.6 через маркетплейс.
Можно ли обновиться до 1.7.13 этим скриптом?
Делал все по инструкции, но почему-то когда скриптом нажимаю установить версию 1.7.7, все ломается и ставится версия 1.0.1
 
Реакции:
Подскажите пожалуйста, сейчас установлен аспро оптимус 1.7.6 через маркетплейс.
Можно ли обновиться до 1.7.13 этим скриптом?
Делал все по инструкции, но почему-то когда скриптом нажимаю установить версию 1.7.7, все ломается и ставится версия 1.0.1
Обновить можно, когда пропатчите скриптом сайт из not_mine нужно удалить строку с решением, оно туда вписывается
 
Реакции:
  • Мне нравится
Реакции: freewin33
Обновить можно, когда пропатчите скриптом сайт из not_mine нужно удалить строку с решением, оно туда вписывается
Да, так и делал, но при нажатии установить напротив 1.7.7 версии, ставится 1.0.1, все ломается соответственно, т.к. 1.0.1 очень старая.
 
Реакции:
Да, так и делал, но при нажатии установить напротив 1.7.7 версии, ставится 1.0.1, все ломается соответственно, т.к. 1.0.1 очень старая.
Странно, не должно быть такого, попробуйте на чистой битрикс
 
Реакции:
  • Мне нравится
Реакции: freewin33
Странно, не должно быть такого, попробуйте на чистой битрикс
Спасибо, попробую.
Еще вопрос, а после этого, можно ли возвращать сервер обновлений и пользоваться штатными обновлениями?
 
Реакции:
Реакции:
  • Мне нравится
Реакции: freewin33
[MP_LICENSE_VIOLATION] В вашу лицензию не входит модуль Аспро: Оптимус - интернет-магазин (aspro.optimus). Вы должны удалить этот модуль.
Хотя в not_mine.php модуль прописан.
Из-за этой ошибки недоступно штатное обновление решений(
Не подскажите, что не так может быть?
Перепишите его в файле, в другое место
 
Реакции:
  • Мне нравится
Реакции: freewin33
Столкнулся с такой проблемой.
Пытаюсь обновить aspro.next на одном сайте.
Запустил get_update.php, ядро пропатчилось.
В not_mine.php прописал решение.
Залил обновления в bitrix/updates, но почему-то в списке этих обновлений на странице get_update.php не появилось.
Далее я попробовал залить и основной файл aspro.next.1.0.0.mod.upd и тогда стало ясно, что скрипт не видит, что решение установлено, т.к. кнопка "Установить" отображается напротив самого мода, а у обновлений нет.

1731344517217.webp
 
Реакции:
Столкнулся с такой проблемой.
Пытаюсь обновить aspro.next на одном сайте.
Запустил get_update.php, ядро пропатчилось.
В not_mine.php прописал решение.
Залил обновления в bitrix/updates, но почему-то в списке этих обновлений на странице get_update.php не появилось.
Далее я попробовал залить и основной файл aspro.next.1.0.0.mod.upd и тогда стало ясно, что скрипт не видит, что решение установлено, т.к. кнопка "Установить" отображается напротив самого мода, а у обновлений нет.

1731344517217.png
Добавлять решение в not_mine нужно только после установки через скрипт и на сайте
 
Реакции:
  • Мне нравится
Реакции: freewin33
В данном случае не помогает, без разница, есть ли он в not_mine или нет.
Решение было установлено давно через ключ.
Сейчас хотел обновиться через дельту.
Уже делал так на другом сайте, только там был aspro.optimus.
А тут что-то странное.
 
Реакции:
В данном случае не помогает, без разница, есть ли он в not_mine или нет.
Решение было установлено давно через ключ.
Сейчас хотел обновиться через дельту.
Уже делал так на другом сайте, только там был aspro.optimus.
А тут что-то странное.
Разница огромная, удаляете, ставите по порядку, должен обновить нормально
 
Реакции:
  • Мне нравится
Реакции: freewin33
Так если удалить, то все слетит.

Разобрался.

Ошибка
[Ux11] Ошибка описания модуля "_scode.redirects".
Не установлено соединение с сервером обновлений. [Ux11] Ошибка описания модуля "_scode.redirects".

Удалил модуль _scode.redirects и все появилось и обновилось.

Спасибо
 
Реакции:
вышла новая версия Аспро, в шаблоне есть еще модули которые нужно обновить тоже.

Вопрос, шаблон знаю как обновлять, просто закидываю aspro.premier.1.1.0.delta.upd в папку bitrix/updates, а как обновить модули Аналитика заказов и Аспро AI?
 
Реакции:

Похожие темы

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