Добрый день всем почитателям Друпал!
Передо мной стоит задача обновить версию Друпал на своем сайте. Я уже было хотел сесть да заняться этим. Но мне в голову попала такая идея. Интересно мнение специалистов по этому поводу.
Исхожу из банального правила, что чем меньше сайт в дауне во время обновления, тем лучше.
А идея у меня такая:
- Скачать релиз новой версии с официального сайта Друпал
- Сделать backup файловой системы сайта и базы данных
- Создать поддомен на основном домене сайта. (dev.domain.com)
- На поддомене развернуть backup. Таки образом, у нас на dev.domain.com будет точная копия основного сайта. Но не зеркало, т.к. БД и файлы будут у этого поддомена свои, отличные от тех, с которыми работает domain.com
- Производим обновление Друпал на dev.domain.com. Тестируем, удостоверяемся в том, что новая версия никак не конфликтует с нашими модулями, нашим хостингом и т.д.
- Создаем backup с домена dev.domain.com (файлы + база данных)
- Разворачиваем созданный в предыдущем пункте backup уже на домене domain.com
- Снова тестируем уже основной домен.
Я это еще не пробовал. Перед практикой хочется по "теоретить" немного а то боязно сразу к активным действиям переходить. Возможно я что-то упустил из своей теории. Хочу услышать Ваши мнения и советы по поводу такой схемы.
Комментарии
Я все свои проекты обновляю на localhost'е, если траблов нет, заливаю на сервер.
P.S. Удобно тем, у кого стоит второй комп с линуксом. У меня все настройки как у хостера
Гм... Ваше PS для меня как раз очень важно. У меня "переезд" с локалхоста на хостинг = куча траблов. Поэтому в моей идеи все условия "максимально приближены к боевым". Домен и поддомен расположены на одних и тех же настройках сервера хостинг компании.
То что вы предлагаете, это куча действий, а так возможно и вариант для тех, кто не располагает своим "локал" сервером-)
Вы кстати про обновления модулей забыли, там тоже заморочек хватает.
Живой пример:
Второго дня решил обновить panels. Думал, просто исправили баги. Я даже в этот раз текстовые файлы модуля не посмотрел (изменения, ридми и т.п.). Снёс работающую версию, поставил новую и понял, что там не баги исправляли, а делали новые фишки, причём старые полезности удалили (обещали возможность в новых будет). Убрали panels page, которая бывает нужна и работает с другими задействованными модулями. Баги с ИЕ и ещё куча (довольно внушительный список багов)
Ну тут сам виноват, не прочитал, себе наука-)
Зачем все так усложнять.
Во-первых, если у вас нормальный хостинг, то там должен быть как минимум ежедневный backup вашего сайта, а в идеале плюс возможность сделать backup вручную. И все это автоматизированно через админ-панель, включая восстановление из backup.
Во-вторых, даже если такой возможности нет, то используйте SSH для создания backup файлов и базы сайта. Как это делается читайте здесь Там же есть идея как это можно использовать без SSH
В-третьих, если у вас нет ни функции бэкапов, ни SSH, то стоит подумать о смене хостинга
А чем плоха просто директория на сайте? Если у вас все пути относительные - то хоть десять друпалов развернуть можно по директориям вида
www.site.ru/drupal1
www.site.ru/drupal2
www.site.ru/drupal3
...
Естественно, базы данных в MySQL тоже должны называться по-разному (т.е. единственные изменения в sites / settings = это $db_url = 'mysql://...').
WiseMan
Спасибо за ссылку на полезный рецепт в Кукбуке!