• Гость в разделе 1С-Битрикс все ссылки на модули, шаблоны и т.д. помещаем под хайд не менее 150 лайков.
  • Обязательно ознакомьтесь с правилами форума!

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

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

 
Последнее редактирование:
Регистрация
02.06.21
Донат
50.00 ₽
Сообщения
8,955
Решения
1
Симпатии
7,155
  • Друг форума
  • Программист
  • Автор темы
  • Администратор
  • Модер.
  • Команда форума
  • #341
Здравствуйте! Бесконечная загрузка при попытке установки модуля. Запускаю скрипт, который находился в архиве в папке /upd/upd/get_update.php. Пробовал сбрасывать кэш и запускать в режиме правки. Что делаю не так? Переключиться на php 7.4 нет возможности (ложится сайт полностью)
Неоднократно обсуждалась проблема, читайте тему, есть ответ
 

Misaka

Пользователь
За классный аватар
Регистрация
22.06.23
Сообщения
5
Симпатии
0
Неоднократно обсуждалась проблема, читайте тему, есть ответ
К сожалению, точно ответа не дано. Вы предлагаете ставить скрипт для php 7.4 чаще всего в таких случаях. Попробовал через него, тоже самое (Версия сайта 8.1).
 
Регистрация
02.06.21
Донат
50.00 ₽
Сообщения
8,955
Решения
1
Симпатии
7,155
  • Друг форума
  • Программист
  • Автор темы
  • Администратор
  • Модер.
  • Команда форума
  • #343
К сожалению, точно ответа не дано. Вы предлагаете ставить скрипт для php 7.4 чаще всего в таких случаях. Попробовал через него, тоже самое (Версия сайта 8.1).
Скрипт под 7.4 а версия php 8.1... как-то не логично ? У всех проблема индивидуальна, смотрите логи, чаще всего скрипт тут не причем, допустим свежая версия битрикс и средний хост, не дает проблемы такой, а бывает так что возьмешь соседний тариф, чистую битрикс и появляется проблема
 

Misaka

Пользователь
За классный аватар
Регистрация
22.06.23
Сообщения
5
Симпатии
0
Скрипт под 7.4 а версия php 8.1... как-то не логично ? У всех проблема индивидуальна, смотрите логи, чаще всего скрипт тут не причем, допустим свежая версия битрикс и средний хост, не дает проблемы такой, а бывает так что возьмешь соседний тариф, чистую битрикс и появляется проблема
Изначально пробовал использовать скрипт под 8.1, результат был тот же. Ошибка выходит вот такая. У нас шаред хостинг beget. Из-за него, да?
Запрос: "/folder/upd/upd/get_update.php?bitrix_include_areas=Y&clear_cache=Y"

Ошибка: "Bitrix\Main\SystemException"

Сообщение: 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.

/home/e/erotick4/2017.erotic43.ru/public_html/bitrix/modules/main/lib/session/legacy/healerearlysessionstart.php:17
 
Регистрация
02.06.21
Донат
50.00 ₽
Сообщения
8,955
Решения
1
Симпатии
7,155
  • Друг форума
  • Программист
  • Автор темы
  • Администратор
  • Модер.
  • Команда форума
  • #345
Изначально пробовал использовать скрипт под 8.1, результат был тот же. Ошибка выходит вот такая. У нас шаред хостинг beget. Из-за него, да?
Запрос: "/folder/upd/upd/get_update.php?bitrix_include_areas=Y&clear_cache=Y"

Ошибка: "Bitrix\Main\SystemException"

Сообщение: 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.

/home/e/erotick4/2017.erotic43.ru/public_html/bitrix/modules/main/lib/session/legacy/healerearlysessionstart.php:17
Проблема на стороне хостинга, у вас bitrixvm я так понимаю ?
 
Регистрация
02.06.21
Донат
50.00 ₽
Сообщения
8,955
Решения
1
Симпатии
7,155
  • Друг форума
  • Программист
  • Автор темы
  • Администратор
  • Модер.
  • Команда форума
  • #347
Не установлено.
Для просмотра этого контента нам потребуется ваше согласие на установку сторонних файлов Cookies.
Для получения более подробной информации смотрите нашу страницу с файлами Cookies.
виртуальный хостинг от beget.
Ошибка в посте выше который вы писали никак не связанна с данным скриптом.
Примечание: Внимание! Функция session_start была вызвана до запуска ядра Bitrix. Сеанс будет закрыт во избежание ошибок. Настоятельно рекомендуется избегать использования сеанса перед инициализацией ядра Bitrix.
 

versa4u

Пользователь
За классный аватар
Регистрация
19.03.24
Сообщения
3
Симпатии
0
у меня скачался архив с файлами как поставить на битрикс?
 

sweetkrisw

Пользователь
За классный аватар
Регистрация
09.12.23
Сообщения
6
Симпатии
0
  • Последнее редактирование модератором:
Последнее редактирование модератором:
у меня скачался архив с файлами как поставить на битрикс
закинуть их в папку bitrix/updates а далее запускаем скрипт предварительно разархивировав его в корень сайта : вашсайт/upd/get_update.php
Сообщение автоматически объединено:

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

Код:
Fatal error: Cannot declare class CUpdateSystem, because the name is already in use in /var/www/u72769/data/www/ваш сайт/bitrix/modules/main/classes/general/update_class.php on line 13

[ErrorException] E_ERROR

Cannot declare class CUpdateSystem, because the name is already in use (0)

/var/www/u72769/data/www/ваш сайт/bitrix/modules/main/classes/general/update_class.php:13

Как исправить?
 
Последнее редактирование модератором:

maxisoft

Проверенный
За год с нами За классный аватар
Регистрация
28.06.22
Сообщения
21
Симпатии
21
да на последних версия есть ошибка в скрипте так как существенно обновили базовые классы ядра системы, постараюсь на этой неделе сделать обновление скрипта.
 

LexaMsk

Пользователь
Вы с нами 2 года! Спасибо. За год с нами За классный аватар
Регистрация
19.01.22
Сообщения
5
Симпатии
0
  • Последнее редактирование модератором:
Последнее редактирование модератором:
всем привет! недавно поднял тарифный план на хостинге и стала появляться следующая ошибка при запуске скрипта
Код:
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 /var/www/u1440513/data/www/dveriulyanovskie.com/bitrix/modules/main/lib/session/legacy/healerearlysessionstart.php on line 21
[RuntimeException]
Could not start session because headers have already been sent. "/var/www/u1440513/data/www/dveriulyanovskie.com/bitrix/modules/main/lib/session/legacy/healerearlysessionstart.php":21. (0)
/var/www/u1440513/data/www/dveriulyanovskie.com/bitrix/modules/main/lib/session/session.php:144
#0: Bitrix\Main\Session\Session->start()
    /var/www/u1440513/data/www/dveriulyanovskie.com/bitrix/modules/main/lib/session/kernelsessionproxy.php:47
#1: Bitrix\Main\Session\KernelSessionProxy->start()
    /var/www/u1440513/data/www/dveriulyanovskie.com/bitrix/modules/main/include.php:1
#2: require_once(string)
    /var/www/u1440513/data/www/dveriulyanovskie.com/bitrix/modules/main/include/prolog_before.php:19
#3: require_once(string)
    /var/www/u1440513/data/www/dveriulyanovskie.com/bitrix/modules/main/include/prolog.php:10
#4: require_once(string)
    /var/www/u1440513/data/www/dveriulyanovskie.com/bitrix/header.php:1
#5: require(string)
    /var/www/u1440513/data/www/dveriulyanovskie.com/upd/get_update.php:3
подскажите дело в скрипте и в том что битрикс обновил до последней версии или же хостинг виновен?))
 
Последнее редактирование модератором:

LexaMsk

Пользователь
Вы с нами 2 года! Спасибо. За год с нами За классный аватар
Регистрация
19.01.22
Сообщения
5
Симпатии
0
рег.ру на мое сообщение что они все сломали прислал следующее
В логах веб-сервера каких-либо ошибок после воспроизведения скрипта не наблюдаю.

Чаще всего данная ошибка возникает, если в скрипте PHP есть лишние пробелы/переносы строк и закрывающие теги, из-за чего заголовки отправляются раньше.
Для решения проблемы вам необходимо обратиться в техническую поддержку Битрикс для проверки данного файла, т.к. с нашей стороны сообщений об ошибках на стороне веб-сервера нет.
 

masheri87

Пользователь
За год с нами За классный аватар
Регистрация
20.09.22
Сообщения
1
Симпатии
0
Белый лист система не видит скрипт, поставила и от 8.0 и от 8.1 просто скрипта нет при вызове
 
Регистрация
02.06.21
Донат
50.00 ₽
Сообщения
8,955
Решения
1
Симпатии
7,155
  • Друг форума
  • Программист
  • Автор темы
  • Администратор
  • Модер.
  • Команда форума
  • #354

LexaMsk

Пользователь
Вы с нами 2 года! Спасибо. За год с нами За классный аватар
Регистрация
19.01.22
Сообщения
5
Симпатии
0
когда перепишут скрипт под свежий битрикс?
 

Создайте аккаунт или войдите, чтобы комментировать

Вы должны быть участником, чтобы оставлять комментарии

Зарегистрироваться

Создайте учетную запись. Это просто!

Авторизация

Уже есть аккаунт? Авторизуйтесь.

Похожие темы

  • Закрыта
  • Закреплено
Удалось отвязать все модули от дэмки ниже скрипт работает так: Сканирует папку модулей на...
Ответы
9
Просмотры
7K
Сверху Снизу