skip to content



Перенос Drupal с локальной машины на хостинг

Бессонные ночи и литры кофе позади, сайт на основе Drupal разработан, пора его публиковать. И тут возникает вопрос - как? как установить разработанный сайт на хостинг?

 

1. Переносим базу данных.

 

Сначала очистим в локальной базе данных сайта таблицы cache и sessions чтобы избежать ситуации с показом закешированных страниц и локальными сессиями пользователей. Далее делаем дамп базы данных при помощи того же phpMyAdmin (в случае с MySQL). В панели управления хостингом создаем базу данных и даем пользователю права на доступ к ней (не забываем записать название базы данных, имени пользователя и пароля). После этого восстанавливаем на хостинге структуру и данные из дампа.

 

2. Копируем на хостинг исходные файлы.

 

Для этого подойдет любой FTP-клиент. Просто копируем файлы сайта в каталог на хостинге, которые отвечает за домен сайта. Если панель управления хостинга поддерживает функциональность файл-мененджера с возможностью архивирования и разархивирования файлов, то лучше сделать архив исходных файлов, загрузить его на сервер и там распаковать - так будет гораздо быстрее. При этом забудьте о формате rar - он не распостранен где-либо за пределами СНГ, пользуйтесь стандартным ZIP. После копирования не забудьте дать права на запись на каталог files и, если нужно, подкаталоги.

 

3. Вносим коррективы в файл настроек.

 

Если сразу после переноса вы попробуете открыть сайт, то вместо ожидаемой главной страницы получите служебное сообщение Drupal, где вам вежливо будет сказано, что база данных не доступна по заданному адресу и с заданными реквизитами доступа. Открываем файл sites/default/settings.php, находим в нем строку

$db_url = ........;

и прописываем в ней новые реквизиты доступа - имя базы, имя пользователя и пароль. Если нужно, то указываем адрес сервера базы данных.

Если разработанный сайт опубликован в под-каталоге домена, например вашдомен/testdrupal, то нужно в этом же файле найти строку $base_url = ..... , раскомментировать ее и вписать в ней полный URL сайта без слеша в конце, т.е. не http://вашдомен/testdrupal/, а http://вашдомен/testdrupal

 

4. Конфигурация Drupal.

 

После этих действий ваш сайт уже должен быть доступен по новому адресу, но нужно еще внести коррективы в настройки файловой системы. Для этого открываем "Управление сайтом - Настройка - Файловая система" (/admin/settings/file-system) и указываем путь к каталогу files и временному каталогу (tmp). Если на сервере для PHP включен safe_mode, то нужно:

1) Определить полный путь к каталогу files и указать его, работа по относительному пути может быть затруднена.

2) Создать в рамках DocumentRoot домена каталог tmp, дать для него права на запись и указать полный путь к нему.

Чтобы определить полный (абсолютный) путь можно воспользоваться простым PHP-скриптом:

<?php

print __FILE__;

?>

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

 

В целом, процедура переноса на сервер завершена. Возможны тонкости в перенастройке отдельных модулей, но это уже зависит от того, какие готовые модули вы использовали и как писали свои модули.

Комментарии

дополнение

еще в апаче mod_rewrite нужно включить
а то я пока не включил, не работало.
у меня правда обратная задача была :) переносил с бесплатного хостинга на домашний.

про комментарии

сам друпалом стал недавно интересоваться. с этой точки зрения, выскажу точку зрения на сайт.
вижу тут авторизацию, но не вижу регистрации. не вижу входа по OpenID. ну, это ладно. допустим вход только для владельца сайта. тогда не совсем понятно, зачем он виден всем! :)

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

конечно, это чисто мое мнение.
за статью спасибо. все работает. вроде))

Спасибо за критику

Да, недостатки есть, сейчас честно говоря не доходят руки довести сайт до ума, т.к. то что есть сейчас - результат не самых гуманных экспериментов по изучению Drupal.

Надеюсь в июле будет немного больше свободного времени, ну а пока - "сапожник без сапог" :)

Пишите ясней!

не уловил разницу!!! ;))

т.е. не http://вашдомен/testdrupal, а http://вашдомен/testdrupal

спасибо.

спасибо. поправил

Powered by Drupal. CrystalX theme created by Nuvio | Webdesign.