Мультисайтинг – как и зачем.

Аватар пользователя jerboa7 jerboa7 29 ноября 2006 в 17:27

Недавно сделала три сайта на одном Друпале. До этого была масса вопросов. Было непонятно, как будут выглядеть сайты и вообще ничего не понятно. Хотя я прочитала все, что нашла на эту тему на Друпал.ру и Друпал.орг. Теперь стало понятнее, сайты работают. Может, мой опыт кому-нибудь пригодится. Пишу для тех, кто еще не делал мультисайтинг и кто только начинает работать с Друпалом. Потому что проще сразу делать мультисайтинг, чем как я через полгода, когда у меня уже появилось три сайта на разных версиях Друпала.

Краткий план данной публикации:

1. Мой первый сайт на Друпал 4.6.6.

- знакомство с Друпалом

- первый сайт на 4.6.6.

- хочу, чтобы везде и всегда был Друпал!

2. Мой второй сайт на Друпал 4.7.0.

- ура! Новая версия Друпала. Надо попробовать.

- надоел 4.6.6. Хочу везде 4.7.0.

3. Три сайта на Друпале 4.7.0.

- ни к чему два Друпала на площадке, когда и один со всем справится

- как??? Как это выглядит? Как это работает? С чего начать?

- третий сайт пусть тоже входит в мультисайтинг

Мой первый сайт на Друпал 4.6.6.

Опыт использования Друпала у меня невелик. Осваивать его начала в марте 2006 года. На 8 марта муж Алексей подарил мне площадку на Мастерхосте и домен www.maksimova.info. Потом посмотрел, как я вручную ковырялась во фронтпейдже в попытках создать шедевр, и сказал, что нужно всё автоматизировать. Для этого есть движки и скрипты.

Я скачала скрипт для публикации новостей cutenews, и мой блог с месяц жил на нём. Когда Алекс увидел, что я прониклась комфортом автоматизированного сайта, он сказал, что настоящий обладатель площадки должен пользоваться MySQL и серьёзным движком. И тогда муж показал мне Друпал. Для меня тогда это было, как всё, что находится под капотом машины – знаю, для чего нужен мотор и тосол. Но не знаю, что это такое и сомневаюсь, нужно ли мне куда-либо вообще ехать.

Алекс настроил мой домашний компьютер, как маленький сервер и поначалу я сделала желаемый сайт на локальной машине. Тогда-то постоянные члены русского сообщества Друпал познакомились с моей физиономией, появившейся на htdogs и кричащей: помогите, спасите, не знаю как.

И вот 27 апреля – в Пасху – Алекс всю ночь промучился с публикацией моего творения (а творение стало православным сайтом, который должен был стартовать в Пасху) в сети. Кажется, дело было в кодировках базы данных – поэтому выкладка полноценного сайта не получилась. И еще неделю я заново строила весь сайт в Интернете: создавала категории и меню, набивала контент, загружала фотки. Это повторение пошло на пользу: я перестала путаться, где какие "галки" настраивать в Друпале, разобралась с подшивками и категориями. И как только закончились работы по настройке сайта Благослови, я поняла: надо переводить свой блог на Друпал.

Мой второй сайт на Друпал 4.7.0.

К тому времени вышел Друпал 4.7.0. И я сделала свой блог www.maksimova.info на этой версии Друпала. И этот сайт мне тоже настраивал муж. До меня еще не доходило, как установить Друпал на площадку, сделать связь с БД. С другой стороны, подсознательно думалось: Алекс рядом, настроит, поможет. На моей площадке (Мастерхост) стало два Друпала со всеми сопутствующими файлами. Оба занимали разные базы данных.

Какое-то время меня всё устраивало. Я экспериментировала с модулями, занималась наполнением сайтов. А потом вдруг поняла: надо делать апгрейд Благослови. Мне захотелось сменить тему, сделать свои «регионы», нужны были новые модули и вообще, хотелось красивости в работе, которую дает друпал 4.7.0. со всеми своими открывающимися менюшками.

К тому же человек достаточно поверхностный, я поняла, что хочу изучить Друпал глубже. Не хотелось распыляться с освоением разных версий.

Друпал 4.6.6. в локале проапгрейдился нормально. А вот в Интернете заключил – ни туды и ни сюды. Наверное, потому что первый апгрейд был сделан с 4.6.6 до 4.7.0. А в Интернете я сразу начала апгрейдить до 4.7.4. Благослови улетел в небытие. Пришлось восстанавливать базу из бэкапа.

Корявенько получилось и неприятно. Я решила помучиться и сделать сайт Благослови заново на Друпале 4.7.0. То есть вручную всё набить. Хороший момент, чтобы сделать это на мультисайтинге. О котором много слышала, но который не доводилось пробовать. И для того, чтобы улучшить логику структуры сайта.

Три сайта на Друпале 4.7.0.
- как??? Как это выглядит? Как это работает? С чего начать?
Итак, непосредственно о мультисайтинге. Еще раз напомню, что я не сильна в грамотном техническом описании.
Из всех инструкций, которые я прочитала было непонятно главное, что меня волновало: как это выглядит и как я буду управляться с мультисайтингом. Поэтому самым главным удивлением после настройки было то, что второй сайт нужно делать с нуля (при разных БД), начиная с регистрации администратора, локализацией, установкой модулей и т.д. То есть ответ, который меня интересовал звучит так: сайты выглядят так, как будто на площадке размещены несколько Друпалов.
Поскольку о конкретных настройках мультисайтинга написано много, подробно и профессионально, я остановлюсь только на своих ошибках. Которые, судя из топиков форума сайта Drupal.org случаются не только у меня.
Движок, который должен был обеспечить мультисайтинг, лежит на моей площадке в папках домена www.maksimova.info. Для православного сайта требовалось создать черновой поддомен hram.maksimova.info. Черновой потому, что сюда пришлось вручную переносить тексты с сайта благослови.ру, который какое-то время (пока я переносила файлы) продолжал работать на 4.6.6.
Таблицы баз данных объединять не стала – в какой-то теме советовали не экспериментировать с таблицами, если не очень дружишь с MySQL. К тому же для моих сайтов это не нужно.
Получилось наконец-то избавиться от одной из баз, которые мне предоставляет Мастерхост. База была платная: неудобно. Вручную проставила префиксы в файле database.4.0.mysql и импортировала его в базу, где уже находились таблицы моего блога.
Поддомен hram.maksimova.info я поначалу создала неправильно – не синонимом сайта www.maksimova.info, а отдельным доменом с папками на площадке. Разумеется, мультисайтинг не получился. Не получился, пока я не удалила этот поддомен и не завела его заново, как алиас. (Слово заодно новое узнала Lol
Ну а потом все заработало, настал вышеописанный черед удивляться. Перенесла все со старого сайта 4.6.6. на 4.7.0. Оставалось немногое – в панели администратора площадки удалить blagoslovi.ru как домен и поставить его синонимом maksimova.info. создать папку blagoslovi.ru в папке sites и перенести туда содержимое папки hram.maksimova.info, вписать в settings.php новый адрес.
Ну вот и все. Теперь оба сайта www.maksimova.info и www.blagoslovi.ru составляют мультисайтинг.
З.ы. Там речь шла о трех сайтах. Третий – в стадии развития.

Комментарии

Аватар пользователя axel axel 29 ноября 2006 в 20:50

Интересное описание эволюции пользователя в разработчика. Самообучающийся пользователь — мечта программиста Smile

--
Axel,
администратор сайта «Drupal — Россия»
на вопросы по Drupal отвечаю только на форумах, не пишите в почту и приватом!

Аватар пользователя romantaran romantaran 3 декабря 2006 в 15:23

То есть, если есть сайт site.org на друпале и нужно создать сайт test.site.org, то необходимо
1. в папке sites создать папку test.site.org с файлом настроек
2. создать алиас test.site.org, который бы указывал на site.org

Так?

Аватар пользователя YouKnowMyName YouKnowMyName 28 февраля 2007 в 17:14

Помогите плз разобраться с этим мультисайтингом. Что понимается под контекстом алиас? Я так подозреваю, что у меня в этом затык.
Необходимо сделать три сайта на одном движке. Будем называть их www.site0.com, www.site1.com и www.site2.com, но с разными БД. www.site0.com - на нем собственно и установлен движок drupal, тут все ок.
Делаю следующее:
0. Создаю две БД site1_db и site2_db
1. Создаю в drupal/sites/ директории www.sites1.com и www.sites2.com (копирую туда необходимые модули и темы)
2. Копирую из drupal/default/settings.php в drupal/sites/www.sites1.com/ и drupal/sites/www.sites2.com/
3. Меняю БД в settings.php для каждого сайта (site1_db и site2_db)
4. Меняю в settings.php url на http://www.site1.com/ и http://www.site2.com/
5. Настраиваю конф. файл апаче:

DocumentRoot /home/_sites_/drupal/
ServerName www.site1.com

DocumentRoot /home/_sites_/drupal/
ServerName www.site2.com

И нифига не работает! В чем может быть причина, я так думаю, что из-за алиасов, а что это за нафиг такой?

Аватар пользователя YouKnowMyName YouKnowMyName 14 марта 2007 в 19:46

Как понять синонимами? Что это означает? где сделать? Не могли бы вы пример привести?

Аватар пользователя romantaran romantaran 23 марта 2007 в 15:14

К счастью, на Servage.net мне не пришлось ломать голову над всякими алиасами и синонимами: там любой несуществующий поддомен сайта (any.site.com) ведет на основной сайт (site.com). Так что мультисайтинг у меня заработал сразу же.

А вообще, про синонимы можно почитать здесь: http://www.host.ru/support/hosting/synonym-and-subdomain.html

Аватар пользователя B.X B.X 23 марта 2007 в 19:23

да, servage в этом отношении рулит... сколько хочешь сайтов, сколько хочешь поддоменов... и настраивается всё легко... например, я захотел, чтобы сайт был доступен только по адресу harzah.net... без www... зачем сайту два одинаковых адреса?

Аватар пользователя Dan Dan 24 марта 2007 в 0:53

А я всегда думаю, каким надо быть ......, чтобы не делать сайт "и таким и таким" - с www и без. Правда эти мысли приходят когда заходишь на site.ru, а его там нет, но зато есть www.site.ru.
2 B.X: ничего личного, просто накипело.

Аватар пользователя B.X B.X 26 апреля 2007 в 1:29

а что именно не нравится? мне кажется, что наоборот, сайт должен быть под одним именем... зачем их два-три и больше? то есть, если их больше, то должно быть перенаправление на основной сайт и всё... никаких проблем с этим быть не должно...

Аватар пользователя Dan Dan 30 апреля 2007 в 10:16

Ключевое слово - "должно".
Но оно не всегда есть! Если есть перенаправление, то мне по барабану, какое имя у сайта, главное - что я не гадаю, какое "им" больше нравится.