Обновление ядра Друпал 9

Аватар пользователя Antonina Antonina 21 апреля в 12:53

На 7-ке обновляла платформу через фтп заменой папок и файлов за исключением: sites, htaccess, robots. Запускала update.php и вуаля. На 9-ке, интересует именно через фтп замена каких фалов должна быть осуществлена, а какие трогать не надо, в частности папка themes

Комментарии

Аватар пользователя VVS VVS 21 апреля в 12:59

Никакие файлы не нужны, тема верстается заново, содержимое сайта мигрирует (затягивается) в drupal 9.
Тут о подготовке к обновлению.

Аватар пользователя Antonina Antonina 21 апреля в 13:07

Да вроде понятно написано...по крайне мере для меня. Привела в пример как обновляла ядро на 7-ке и спросила как это делается на 9-ке (второе предложение и есть собственно вопрос), аналогично или нет, какие папки и файлы подлежат замене, а какие нет именно через фтп. Текущая версия сайта 9.3.9, хочу обновить до 9.3.12

Аватар пользователя VVS VVS 21 апреля в 13:12

Мне не понятно было )

На 9-ке это делается с использованием composer, на локальной (dev) копии, а потом через ftp (или лучше другим способом) всё, что он обновил!

Устаревшие технологии лучше не использовать...

Аватар пользователя Selpi Selpi 21 апреля в 13:33

На 9-ке надо научиться пользоваться композером и drupal-recommended-project https://www.drupal.org/docs/develop/using-composer/starting-a-site-using...

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

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

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

Аватар пользователя Antonina Antonina 21 апреля в 13:47

composer никогда не пользовалась, даже понятия не имею, что и как. Коли в корне есть файлы composer.json и composer.lok то логично предположить, что сайт был создан с ним

Аватар пользователя Selpi Selpi 21 апреля в 14:33

Вот и почитайте статью по линку выше, там краткое руководство по композеру применительно к друпалу. Если с английским проблема, то у Никлана есть статья: https://niklan.net/blog/130

Это тот случай, когда надо потратить час-другой жизни на изучение нового, чтобы потом сэкономить сотни часов жизни и нервы.

Аватар пользователя Antonina Antonina 21 апреля в 14:39

Есть ли какая то поэтапная инструкция для чайников поэтапно, как и с чего начать

Аватар пользователя VasyOK VasyOK 21 апреля в 15:34

Если сайт собран на 9ке без Композера, заменить нужно папки core, vendor и файлы в корне. Думаю понимаете: если у вас внесены изменения в .htaccess, robots.txt - их не обновлять. По FTP закинуть только только архив можно. Файлы уже на хосте распаковывать.

Реальность такова, что Комопозером пользоваться рано или поздно придется. Вот не знаю какой хостинг посоветовать чтоб и все настроено было из коробки и мозги техподдержке можно было повыносить. Комозером и Драшем то пользоваться не особо сложно, но только когда знаешь как. От когда знаешь как оно должно быть - можно и локальное окружение собирать и даже ВДС настраивать.

Аватар пользователя sapfir sapfir 21 апреля в 17:04

Если сайт на виртуальном хостинге, то инструкции не имею, только несколько догадок.
Если на выделенном виртуальном сервере, то по этой инструкции можно:
https://www.drupal.org/docs/updating-drupal/updating-drupal-core-via-com...

Впервые про эти дела в этой статье читал
https://niklan.net/blog/209

Но времени и сил довольно не мало ушло на осмысление.
Но в итоге сделал, как рекомендуется.

Имел опыт использования виртуальных хостингов, которые давали редактировать composer.json и запускать composer на выполнение прямо в веб-админке хостинга Plesk. Но там все равно не так, как в консоле сервера по удобству. Привыкнуть может надо.

Если сервер приобретете и администрировать будете то хороший сайт есть с инструкциями. В 99.90% случаев работает. Просто копируешь, вставляешь.
https://www.digitalocean.com/community/tutorials/how-to-install-linux-ap...

Там примерно 10-15 рабочих инструкций, которые потребуется выполнять, что бы сервер поддерживать более менее.

Аватар пользователя sapfir sapfir 22 апреля в 7:44

Хороший хостинг.
Надо тогда Composer проверить.
Может быть потребуется на новый Composer перейти, если у вас старый.

Потом посмотреть, какой тип Drupal стоит.
Если drupal/recommended-project, то по этой инструкции обновлять
https://www.drupal.org/docs/updating-drupal/updating-drupal-core-via-com...

А если другой
То искать под него инструкции
Либо перейти с него на drupal/recommended-project

Но как переходить я не могу подсказать
Кажется тут было описано
https://niklan.net/blog/209

Или по новой поставить сайт если он новый и пустой
https://www.drupal.org/docs/develop/using-composer/starting-a-site-using...

Аватар пользователя Antonina Antonina 22 апреля в 14:48

Сайт работающий, просто был перенос с 7-ки на 9-ку, оттого и возник вопрос про обновление ядра, т.к. на 7-ке сделать по фтп это было как два пальца об Друпал

Аватар пользователя igor1970 igor1970 2 мая в 12:14

Если в корне сайта присутствуют каталоги vendor, web, а также файлы composer.json, composer.lock, установлены composer и drush, то выполняется следующее:

  • вход на удалённый сервер через SSH и переход в корень сайта
  • sudo -u www-data composer update drupal/core-recommended --with-dependencies
  • drush updb
  • drush cache:rebuild

Всё!

P.S. www-data лишь для примера, так как пользователь и группа могут иногда быть и иными.