Как перенести сайт Drupal на хостинг ru-center
vladimir пн, 02/18/2013 - 23:00 Drupal
Так исторически сложилось, что практически все мои проекты расположены на серверах именно этой хостинговой компании. Проблем с размещением проектов на ru-center у меня никогда не было. Но вот с сайтом на cms Drupal повозиться пришлось. В этой статье я рассмотрю перенос сайта Drupal 7 с локального сервера на хостинг компании ru-center.
Экспортируем базу данных Drupal
Для экспорта базы данных заходим в phpMyAdmin. Для этого набираем localhost/phpMyAdmin/. После этого будет доступен интерфейс:
В левой колонке выбираем имя той базы данных, которую необходимо экспортировать. Откроется структура базы вашего сайта. Здесь нам необходимо нажать на вкладку Экспорт:
Во вкладке Экспорт настройки я оставил по умолчанию (если размер вашей базы данных большой, то лучше сохранить её в zip):
Импортируем базу данных Drupal на ru-center
Заходим в панель управления вашим сайтом. На хостинге ru-center она находится по адресу nic.ru/login/hcp/
В левом меню нажимаем СУБД – Пользователи. Здесь нам необходимо создать нового пользователя. Это нужно для того, чтобы узнать логин и пароль для входа в phpMyAdmin на сервере ru-center. Соответственно вводим желаемое имя и нажимаем Создать:
После выполнения этой операции высветится логин и пароль. Записываем их и сохраняем в надёжном месте.
Нажимаем в левой колонке на ссылку phpMyAdmin. Откроется окно, где вам необходимо ввести имя пользователя и пароль, которые вы только что получили. Имя сервера, как правило, указано по умолчанию. Оно имеет вид basename.mysql. После ввода откроется уже знакомый интерфейс phpMyAdmin, только в этот раз на боевом сервере. Далее все аналогично экспорту, кликаем в левой колонке на вашу базу и в открывшемся окне нажимаем вкладку Импорт. Настройки оставляем по умолчанию. Выбираем сохранённую базу данных локального сайта на вашем компьютере и жмём Ок. Отлично! Осталось совсем немного.
Копируем на сервер ru-center файлы сайта на Drupal
Эту операцию я всегда выполняю с помощью ftp клиента. Вы же можете использовать для этого панель управления сайтом. Тут все просто. В ftp-клиенте вводим логин и пароль для доступа по ftp. Далее вы увидите несколько папок. Одна из них будет с именем вашего сайта. Заходим в неё. Далее выбираем папку docs. Именно в эту папку скопируйте все файлы вашего сайта.
Настройка файла settings.php для Drupal 7
Этот файл находится по адресу sites/default/settings.php. Если же по этому пути лежит файл default.settings.php, то вам надо продублировать этот файл и изменить имя на settings.php.
Для Drupal 7 вид может быть таким:
$databases = array ( 'default' => array ( 'default' => array ( 'database' => 'имя базы данных', 'username' => 'имя пользователя', 'password' => 'пароль', 'host' => 'имя хоста', 'port' => '', 'driver' => 'mysql', 'prefix' => '', ), ), );
Вводим название базы данных в ‘database’ (по умолчанию, если вы не меняли имя базы данных в панели управления сайтом, оно будет иметь окончание _db).
Имя пользователя и пароль нужно вводить те, что вы записали при создании пользователя в панели управления сайтом.
Имя хоста должно иметь окончание .mysql. Например, если ваш сайт test.ru. то имя хоста будет test.mysql.
Настройка модулей на хостинге ru-center для Drupal
В панели управления сайтом в левой колонке нажимаем пункт Веб-сервер. На открывшейся странице выбираем Управление модулями:
В открывшемся списке кликаем по php5.3 (настроить модуль). На открывшейся странице нажимаем Управление расширениями. Откроется список расширений. После этого сразу же кликнете по чекбоксу Показать Все. Приведу картинку с пунктами, которые следует выбрать:
Ну вот собственно и всё! Если у вас по этой схеме не получается запустить drupal опишите в комментариях проблему. В следующей статье рассмотрим запуск cron.php на хостинге ru-center.
- Войдите, чтобы оставлять комментарии
Комментарии
У меня вылезла ошибка:
PDOException: SQLSTATE[42S02]: Base table or view not found: 1146 Table 'b115675_allfest.semaphore' doesn't exist: SELECT expire, value FROM {semaphore} WHERE name = :name; Array ( [:name] => variable_init ) in lock_may_be_available() (line 167 of /home/u115675/all-festru/www/includes/lock.inc).
У вас какая-то проблема с файлом settings.php. Посмотрите внимательно, что именно вы в нем вручную правили.
У меня та же проблема. При установке модклей их настройки не прописываются в меню,
словно нет прав у какой-то составной. Я слабо в этом разбираюсь, и гугл не помог(((
Вот это выдало при очистке кеша, а в других случаях
просто начинается с SQLSTATE[42000]:
Возникла AJAX HTTP ошибка. Полученный код HTTP: 500 Следует
отладочная информация. Путь: /batch?id=45&op=do Текст Состояния:
Service unavailable (with message) Текст Ответа: PDOException:
SQLSTATE[42000]: Syntax error or access violation: 1064 You have an error in
your SQL syntax; check the manual that corresponds to your MySQL server
version for the right syntax to use near ': name' at line 1: SELECT expire, value
FROM {semaphore} WHERE name = : name; Array ( [:name] => variable_init ) in
lock_may_be_available() (line 167 of
/home/sarapka/sarapka.ru/docs/includes/lock.inc).
Нашлось решение? у меня та же ошибка
Там проблема выше чем просто настройка, в целях безопасности ограничены права rucentr выход один.
Установка собственного MySQL
"использование VIEW на вашем MySQL-сервере невозможно"
а также
"на нашем MySQL-сервере использование представлений (VIEW), процедур (PROCEDURE) и триггеров (TRIGGER) невозможно, единственный способ их использовать состоит в установке собственного MySQL-сервера, о чём говорится в данной ветке.
согласно статье http://forum.nic.ru/showthread.php?t=189
ссылки на скрипт mysql недействительные
неизвестна версия вашей операционной системы чтоб подобрать MySQL
Вот и думайте заморачиваться ли.
Решение:
+1) Качаем исходный код MySQL:
Код:
wget http://downloads.mysql.com/archives/mysql-5.1/mysql-5.1.60-freebsd7.0-i386.tar.gz
-2) Распаковываем архив:
Код:
tar -xvfz archive.tar.gz mysql-5.1.60-freebsd7.0-i386.tar.gz
-3) Переходим в папку $HOME/mysql-5.1.60-freebsd7.0-i386
Код:
cd $HOME/mysql-5.1.60-freebsd7.0-i386
-4) Конфигурируем:
Код:
./configure --prefix=$HOME/mysql5 --with-plugins=innobase
-5) Инсталлируем:
Код:
make install
-6) Запускаем команду для установки служебных БД:
Код:
$HOME/mysql5/bin/mysql_install_db
-7) Создаем конфигурационный файл $HOME/.my.cnf:
Код:
grep ServerName ~/etc/httpd.conf | awk {'print "[server]\nbind-address = " $2'} > $HOME/.my.cnf
-8) Создаем скрипт запуска ~/etc/rc.d/mysql5, вставляем следующее содержимое:
Код:
#!/bin/sh
#
$HOME/mysql5/bin/mysqld_safe --user=$USER &
sleep 4
if [ -e $HOME/mysql5/var/`hostname`.pid ] ; then
echo "mysqld for user $USER started"
else
echo "mysqld for user $USER NOT started"
fi
-9) Выставляем разрешения на выполнение скрипта запуска MySQL:
Код:
chmod 744 ~/etc/rc.d/mysql5
-10) Запускаем:
Код:
~/etc/rc.d/mysql5
*** Изменить пароль MySQL для пользователя root на значение 'новый_пароль':
Код:
$HOME/mysql5/bin/mysqladmin -u root password 'новый_пароль'
*** Остановить MySQL-сервер:
Код:
$HOME/mysql5/bin/mysqladmin -h localhost -u root -p shutdown