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

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

  • Друг форума
  • Программист
  • Автор темы
  • Администратор
  • Модер.
  • Команда форума
  • #1 из 558
Что делает скрипт?
Он позволяет скачать модули и дельта обновления к ним используя ключ битрикса.
Все обновления скачиваются в папку /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. При установке решения, бесконечная загрузка, проблема наблюдается редко, решение:
Включить режим правки
 
Последнее редактирование:
  • Друг форума
  • Программист
  • Автор темы
  • Администратор
  • Модер.
  • Команда форума
  • #161 из 558
ошибка при запуске скрипта

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 /home/bitrix/www/bitrix/modules/main/lib/session/legacy/healerearlysessionstart.php on line 21

[Error]

CUpdateClientPartner::GetCurrentModules(): Argument #1 ($strError) cannot be passed by reference (0)

/home/bitrix/ext_www/site/upd/get_function.php:216

#0: myModules

/home/bitrix/ext_www/site/upd/get_function.php:248

#1: getMyModules

/home/bitrix/ext_www/site/upd/get_function.php:261

#2: rebuild

/home/bitrix/ext_www/site/upd/get_update.php:31

Стоит PHP8.1
Думаю скрипт не работает на версии php8
 
Последнее редактирование модератором:
  • Друг форума
  • Программист
  • Автор темы
  • Администратор
  • Модер.
  • Команда форума
  • #163 из 558
ошибка при запуске скрипта

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 /home/bitrix/www/bitrix/modules/main/lib/session/legacy/healerearlysessionstart.php on line 21
[Error]
CUpdateClientPartner::GetCurrentModules(): Argument #1 ($strError) cannot be passed by reference (0)
/home/bitrix/ext_www/site/upd/get_function.php:216
#0: myModules
/home/bitrix/ext_www/site/upd/get_function.php:248
#1: getMyModules
/home/bitrix/ext_www/site/upd/get_function.php:261
#2: rebuild
/home/bitrix/ext_www/site/upd/get_update.php:31
----------
Стоит PHP8.1
Думаю скрипт не работает на версии php8
Вам уже говорили что скрипт не работает на версиях выше 7.4 !!! И это обсуждалось в теме не однократно
 
короче если будут возникать ошибки, как у меня выше, то откатывайтесь на php7.4, обновляйте что вам надо скриптом, а затем возвращайтесь снова в php8. времени чуть больше займет, зато работает.
 
Прошу прощение приболел, но сегодня постараюсь закинуть скрипт на 8.1
 
Последнее редактирование модератором:
  • Друг форума
  • Программист
  • Автор темы
  • Администратор
  • Модер.
  • Команда форума
  • #167 из 558
  • Друг форума
  • Программист
  • Автор темы
  • Администратор
  • Модер.
  • Команда форума
  • #169 из 558
Обновил скрипт под php 8.1, в первом посте.
 
Что делает скрипт?


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

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

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

В связи с потоком вопросов, типо: "как поставить?" и "почему у меня не получается?", предлагаю более детальную схему работы скрипта. Если у вас уже установлен Битрикс, то можно начать с пункта 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.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)
*** Скрытый текст не может быть процитирован. ***
*** Скрытый текст не может быть процитирован. ***
на архиве пароль
 
  • Друг форума
  • Программист
  • Автор темы
  • Администратор
  • Модер.
  • Команда форума
  • #171 из 558
Добрый день!
Перечитал весь пост, не могу найти пароль от доступа к файлу(
Прошу прислать в ЛС
 
  • Друг форума
  • Программист
  • Автор темы
  • Администратор
  • Модер.
  • Команда форума
  • #173 из 558
Добрый день!
Перечитал весь пост, не могу найти пароль от доступа к файлу(
Прошу прислать в ЛС
Добрый день, значит не перечитали первое сообщение, там пароль указан под спойлером
 
Всем привет. А скрипт как то влияет на установку из оф.маркетплейса? Что то после применения, не могу поставить модули
выбираю модуль, жму установить, перекидывает на страницу что хочу установить, но ничего нет, пусто.
 
  • Друг форума
  • Программист
  • Автор темы
  • Администратор
  • Модер.
  • Команда форума
  • #175 из 558
Всем привет. А скрипт как то влияет на установку из оф.маркетплейса? Что то после применения, не могу поставить модули
выбираю модуль, жму установить, перекидывает на страницу что хочу установить, но ничего нет, пусто.
Нет, не влияет
 
странно, что то сломалось видимо
 
При помощи данного скрипта выполнил всё до 6 действия, там выполняется постоянная загрузка шаблона. Подскажите что можно сделать что бы установить шаблон .upd при помощи скрипта?
Обновлял страницу и пытался установить заново ( можно только чистый шаблон устанавливать, кнопки "установить" у обновлений шаблона снизу самого шаблона не появлялось). Изначально на сайте стоит случайный шаблон из предложенных 1С-Битрикс.
 
  • Друг форума
  • Программист
  • Автор темы
  • Администратор
  • Модер.
  • Команда форума
  • #178 из 558
При помощи данного скрипта выполнил всё до 6 действия, там выполняется постоянная загрузка шаблона. Подскажите что можно сделать что бы установить шаблон .upd при помощи скрипта?
Обновлял страницу и пытался установить заново ( можно только чистый шаблон устанавливать, кнопки "установить" у обновлений шаблона снизу самого шаблона не появлялось). Изначально на сайте стоит случайный шаблон из предложенных 1С-Битрикс.
Попробовать версию пхп другую
 
Попробовать версию пхп другую
Вы имеете в виду скрипт более старой версии- я правильно Вас понимаю?
Ред. При выполнении get_update.php предыдущих версий скрипта появляется данная ошибка:
При выполнении скрипта возникла ошибка. Включить расширенный вывод ошибок можно в файле настроек
Ред.х2 Установилось на единственной версии php74-bx (изначально стояло php81). Может кому пригодится.
 
Последнее редактирование:
Здравствуйте. Уточните, пожалуйста, после Патча ядра и установки пропатченных решений, устанавливать Обновления Ядра битрикс можно? Если Битрикс - лицензия...
 
    Сейчас эту тему читают:

Похожие темы

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