как обновить друпал (перевод)

Главные вкладки

Аватар пользователя Geldora Geldora 16 января 2008 в 12:13

ОЧЕНЬ подробная инструкция Как провести малое обновление Друпала (в оригинальную статью внесены изменения для версий Drupal 6 и 7).

на выходных мне удалось таки проапгрейдить друпал до 5.6. Я до сих пор в шоке отого, что у меня получилось (три раза не выходило), и решила перевести статью с http://www.siteground.com/tutorials/drupal-tutorial/drupal_upgrade.htm по которой я и обновлялась.

Как обновить ваше друпал-приложение?
Ниже в простых словах будет рассказано о том как обновить ваш Друпал до последней стабильной версии.

Важно!!! Перед тем как перейти к апгрейду, убедитесь в том, что вы забекапили ваш сайт! (ссылка на английский оригинал)

Мы предполагаем, что устаревшая версия Друпала установлена в подпапке вашего домена - (т.е. на www.yourdomainname.com/drupal).
Шаг 1. Первым делом откройте официальный сайт Друпала и скачайте оттуда последнюю стабильную версию на жетский диск вашего компьютера.
Как только закончите скачивать, нужно будет загрузить новую версию Друпала на ваш сайт. Проще всего это сделать, создав новую папку в корневом калоге public_html (т.е. создать там папку drupal_new) и загрузив туда новую версию Друпала. Потом нужно разархивировать файлы через cPanel -> File Manager.
(А можно сделать наоборот...)

шаг 2. Когда новая версия Друпала будет загружена в папку drupal-new, вам нужно будет скопировать туда необходимые вам папки и файлы со старой версии. Здесь мы предполагаем, что вы предварительно сделали бекап ваших файлов. Пожалуйста, откройте папку с бекапом вашего сайта, скопируйте файл .htaccess и папки sites и files (для Друпал версий 6 и 7, папки files лежат в папке sites/yourdomain! Перепроверьте на всякий случай...); и загрузите их в папку drupal_new путем переписывания любых существующих файлов. (Команда - overwriting any existing files)

Теперь, пожалуйста, откройте cPanel -> File manager -> public_html -> drupal_new и откройте для изменений файл update.php (это было актуально для 5ого Друпала) drupal_new/sites/default и откройте для изменений файл settings.php (актуально для 6ого и 7ого Друпала). Измените следующую линию

$access_check = TRUE;

на

$access_check = FALSE;
(На оригинальной странице есть иллюстрации всего, что и куда нажимать)

Сохраните изменения. Они позволят загрузить update.php из браузера.

Шаг 3. Мы почти закончили. Следующий шаг - обновление базы Друпала.
В адресной строке вашего браузера, пожалуйста, наберите:
http://yourdomainname.com/drupal_new/update.php,
где yourdomainname.com - заменено на адрес вашего существующего сайта.
На оригинальном сайте есть картинка того, как будет выглядеть ваш экран. Wink
Кликните на ссылке Run the database upgrade script и следуйте инструкциям.

если не бует сообщено ни о каких ошибках, значит ваш Друпал теперь обновлен. Поздравляем!!!
По соображениям безопасности мы должны изменить $access_check на TRUE. Откройте cPanel -> File manager и откройте для изменения update.php. Измените следующую линию:

$access_check = FALSE;

на

$access_check = TRUE;

А теперь все Smile В новом окне вашего браузера откройте сайт, который вы только что обновляли. Так как мы работали в тестовой папке drupal_new, то адрес должен быть таким http://yourdomainname.com/drupal_new/
как только вы убедитесь в том, что ваш сайт работает как часы, можете удалить или переименовать старую папку drupal на drupal-old, а папку drupal_new переименовать соответственно в друпал чтобы сделать тестовую папку рабочей.

Теперь все. Поздравляем!!! На вашем сайте теперь стоит последняя стабильная версия Друпала.

Комментарии

Аватар пользователя Geldora Geldora 16 января 2008 в 12:27

Дописываю в комментариях то, что у меня не получилось и мои соображения, почему не получилось.
1. Здесь не написано, но в друпал хандбуке и на сетегноме рекомендовано перевести сайт в ражим обслуживания, выключить все дополнительные модули и сменить тему на гарланд. Я так и сделала.
update.php прошел без ошибок и перевел меня на страницу администрирования, где было сказано о каких-то ошибках и предложено посмотреть статус репорт. Вот тут и поехало - page cant be found + cant found index.php + site is in off-line status.
Из этого выбиралась так - пошла на риск, убрала старую версию и перетащила все из папки друпал-нйю в корень сайта. Не помогло.
Все попытки выйти из оффлайна через www.uchi.kz/admin, www.uchi.kz/user и т. д. не помогли. Пришлось использовать SQL запрос к базе.

UPDATE variable SET value = 's:1:"0";' WHERE name= 'site_offline'; DELETE FROM cache WHERE cid = 'variables';

Только после этого все встало на свои места.
2. Постфактум дошло, что возможно и не стоило вводить сайт в оффлайн, если этого не указано в тюториале. Подскажите, плиз, а зачем это нужно в принципе?
3. поняла еще одну ошибку. У меня заменена главная страница по умолчанию на другую, сгенерированную с пом вьювс и панелс. Т.к. эт модули были отключены, разумеется, что друпал не мог найти такую страницу!!! Так что для себя на будущее - если изменена главная страница, перед обновлением нужно установить её на дефолтную.

Аватар пользователя vadbars@drupal.org vadbars@drupal.org 16 января 2008 в 12:51

Измените следующую линию:
$access_check = FALSE;
на
$access_check = TRUE;

Это нужно только, если вы хотите запускать update.php не под админом. Изменение как раз и отключает проверку прав доступа.

Перевод сайта в режим обслуживания нужен, чтобы ваши посетители не пугались, увидев (как это, кстати, бывало при "ремонтных работах" на drupal.ru Smile сообщение о недоступности базы и т.п. Странно, что у вас не срабатывала ссылка вашсайт/user

Обновления до следующей минорной версии (т.е. с 5.5. на 5.6, например) частенько можно производить без этих устрашающих манипуляций с директориями и т.п.
Если сайт построен грамотно (все доп. модули и темы расположены в /sites/all, в базовых файлах напрямую не ковырялись, сделан бекап БД и ключевых каталогов /sites и /files), то апгрейд можно произвести просто переписыванием файлов и запуском update.php (там может и не быть никаких изменений в базе). После апгрейда надо еще раз пробежаться по инсталляции и проверить, правильно ли установлены права доступа.

Аватар пользователя klime klime 15 февраля 2010 в 3:34

А если сайт построен не грамотно ? =\

я просто как-то не подумал что нужно в sites/all создавать темы и фауло, впервые делаю на друпале сайт)

Собственно такой вопрос как мне сделать так чтобы все было по грамотному далее?

т.е. я делаю бекап, устанавливаю новую версию, заливаю в грамотные папки тему и модули, а как базу переучить?

Аватар пользователя Geldora Geldora 16 января 2008 в 13:22

Спасибо за комментарий.
А как это "пробежаться по инсталляции и проверить, правильно ли установлены права доступа?"

Аватар пользователя stolz stolz 7 августа 2008 в 20:00

Geldora спасибо Вам огромное!!!!!! А то все боялся обновлений, а тут так все просто описано. А самое главное ни чего не произошло!!!!!!!!

Аватар пользователя anpal anpal 7 августа 2008 в 22:55

Умница, хорошо описала, пропустила только правку файла сетинг.пхп, также тщательный контроль файлов при бэкапе и загррузке через фтп, а с учетом http://harzah.net/node/902, так совсем отлично

Аватар пользователя Antoniy Antoniy 14 октября 2008 в 18:49

Спасибо! Обновился с 5.5 до 5.11 на локалке и даже не поверил сначала, что обновился. Но потом посмотрел журналы на сервере и на локалке и поверил Lol

Аватар пользователя .Nikita .Nikita 10 мая 2009 в 15:37

проделал все вышеописанные процедуры. что то там произошло на сайте. теперь кто может сказать, как узнать какая теперь версия дрюпала на сайте? (где какое поле посмотреть)

Аватар пользователя Sanook Dee Sanook Dee 23 декабря 2009 в 22:13

все оказалось не так сложно как описал ТС. немного выше есть пост со ссылкой на сайт Харзаха, вот у него все описано как надо, без лишних сложностей.

Аватар пользователя klime klime 15 февраля 2010 в 11:03

vgoodvin wrote:
"klime" wrote:

Перестраиваете сначала весь сайт грамотно чтоб работал, а потом уже обновляетесь.

а как это сделать самым безболезненным способом?:)

Аватар пользователя vgoodvin vgoodvin 15 февраля 2010 в 17:15

"klime" wrote:
а как это сделать самым безболезненным способом?:)

Перестраивать руками. Обновляться тоже, и не забывать про бекапы. При обновлении сначала сделать рабочую обновленную копию сайта, а потом если все работает, поставить эту копию заместо устаревшей версии.

Аватар пользователя klime klime 15 февраля 2010 в 19:12

vgoodvin wrote:
"klime" wrote:
а как это сделать самым безболезненным способом?:)

Перестраивать руками. Обновляться тоже, и не забывать про бекапы. При обновлении сначала сделать рабочую обновленную копию сайта, а потом если все работает, поставить эту копию заместо устаревшей версии.

т.е. если я правильно понял нужно сначала выставить все на дефолт, переместить все модули и темы в нужную папку и снова включить?

настройки блоков и т.д. при этом не потеряються?

и потом сделать обновление в папке нью, потестить и залить на место сайта?

Аватар пользователя Dendix Dendix 4 июня 2010 в 18:48

я просто открываю ftp закидываю вручную все папки(новые) с заменой кроме sites и .htaccess и все запускаем update.php

Аватар пользователя 0legka 0legka 12 марта 2012 в 16:11

Дополню: в версии друпал 6.22 с которой обновлялся до 6.25 вот эта запись $access_check = FALSE; находится в ...drupal\sites\default\settings.php

Аватар пользователя tlito tlito 7 марта 2014 в 1:54

После обновления в в 6.29 до 7.26 получил 3 главных недостатка:
в тулбаре ничего нет, а я привык видеть там все нужные ссылки администрирования.
ckeditor не включается, а переставить его не хочется опять качать, он итак был новый.
пропала ссылка добавить материал - Блог. Хотя сайт сделан как раз на этом типе материалов. Ссылки нет, но добавить можно, открыт адрес node/add/blog. Статьи не пропали, редактировать можно, но такой косяк.

В общем, 1 попытка и 6 часов не удались.