Мультидоменный сайт с контентом, частично зависимым от домена

Аватар пользователя gun_dose

Всем привет.
Мне нужно сделать мультидоменный сайт одной организации. Домены будут вроде:
orgname.by
orgname.ru
moscow.orgname.ru
spb.orgname.ru
и т.д.

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

Как это оптимально сделать?

Ключевые слова:
Тип материала:
Версия Drupal:
0 Спасибо

Комментарии

Аватар пользователя fairrandir
fairrandir 10 месяцев назад

В Domain Access вроде же по дефолту. При создании материала можно будет указывать, на какие домены публиковать.

0 Спасибо
Аватар пользователя marazmus
marazmus 10 месяцев назад
fairrandir написал:
В Domain Access вроде же по дефолту. При создании материала можно будет указывать, на какие домены публиковать.

Поддерживаю, модуль Domain Access и его подмодули. Metatag тоже дружит с Domain Access, насколько я помню.

0 Спасибо
Аватар пользователя gun_dose
gun_dose 10 месяцев назад

Спасибо, попробую. Но назревает второй вопрос: как это можно затестить на локалке, при условии, что я работаю в докере и у меня все сайты в домене 127.0.0.1, только порты разные, причём порт идет не один на сайт, а один на контейнер?

0 Спасибо
Аватар пользователя gun_dose
gun_dose 10 месяцев назад

Проблема в том, что адрес контейнера выглядит так: 127.0.0.1:7776

А порты в хостах не пропишешь.

0 Спасибо
Аватар пользователя multpix
multpix 10 месяцев назад

непонятно, зачем вообще для дру локально докер, когда для разработки достаточно php и drush)))

0 Спасибо
Аватар пользователя gun_dose
gun_dose 10 месяцев назад

шоб не мучаться настраивать это на маке. И, кстати, помимо пхп и драша есть ещё одна важная хреновинка для друпала))

0 Спасибо
Аватар пользователя multpix
multpix 10 месяцев назад

едино-разовая инсталляция в свою систему своего рабочего ЯПа это мучения?
что еще я не знаю?

в большинстве случаев мой процесс развертки нового проекта локально следующий:

drush dl цели
drush si аргументы
drush rs

очень редко использую локальные nginx, mysql, postgresql
какая еще хреновинка нужна?

0 Спасибо
Аватар пользователя multpix
multpix 10 месяцев назад

так я не о том, что докер совсем не нужен,
он нужен там, где нужен, а не везде где ни попади.

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

0 Спасибо
Аватар пользователя gun_dose
gun_dose 10 месяцев назад

Mysql нужен, ну да пофиг, разберусь как-нибудь))

0 Спасибо
Аватар пользователя multpix
multpix 10 месяцев назад

мне для разработки хватает sqlite))

0 Спасибо
Аватар пользователя multpix
multpix 10 месяцев назад

Чисто для себя, попробовал поднять сайт для нескольких доменов с  domain

devel@comp ~/projects/drupal/test $ [] drush dl drupal
Project drupal (8.2.4) downloaded to /home/devel/projects/drupal/test/drupal-8.2.4.                          [success]
Project drupal contains:                                                                                     [success]
 - 1 profile: standard
 - 14 themes: testing_multilingual_with_english, minimal, testing_config_import, testing_config_overrides,

drupal_system_listing_compatible_test, testing, testing_multilingual, testing_missing_dependencies, stark,
bartik, seven, stable, classy, twig
 - 70 modules: shortcut, hal, entity_reference, content_moderation, contact, book, filter, user,
automated_cron, link, content_translation, simpletest, menu_ui, config_translation, system, block, color,
field_ui, taxonomy, editor, node, block_content, basic_auth, dblog, serialization, breakpoint, quickedit,
search, path, rdf, migrate_drupal_ui, responsive_image, tracker, outside_in, aggregator, ckeditor, action,
update, syslog, datetime_range, forum, migrate, language, file, datetime, text, rest, dynamic_page_cache,
field, contextual, image, views_ui, options, page_cache, menu_link_content, inline_form_errors, ban, toolbar,
help, big_pipe, block_place, history, comment, migrate_drupal, statistics, telephone, locale, config, tour,
views

devel@comp ~/projects/drupal/test $ [] mkdir drupal-8.2.4/modules/contrib
devel@comp ~/projects/drupal/test $ [] cd drupal-8.2.4/
devel@comp ~/projects/drupal/test/drupal-8.2.4 $ [] drush site-install --db-url=sqlite://sites/default/files/.ht.sqliteYou are about to create a /home/devel/projects/drupal/test/drupal-8.2.4/sites/default/settings.php file and CREATE the 'sites/default/files/.ht.sqlite' database. Do you want to continue? (y/n): y
Starting Drupal installation. This takes a while. Consider using the --notify global option.                 [ok]
Installation complete.  User name: admin  User password: 2Cw5QbEQ2U                                          [ok]
Congratulations, you installed Drupal!                                                                       [status]
devel@comp ~/projects/drupal/test/drupal-8.2.4 $ [] drush upwd admin --password=12345
Changed password for admin                                                                                   [success]
devel@comp ~/projects/drupal/test/drupal-8.2.4 $ [] drush dl domain
Project domain (8.x-1.0-alpha6) downloaded to                                                                [success]
/home/devel/projects/drupal/test/drupal-8.2.4//modules/contrib/domain.
Project domain contains 6 modules: domain_content, domain_source, domain_alias, domain_access, domain, domain_config.
devel@comp ~/projects/drupal/test/drupal-8.2.4 $ [] drush en domain_content domain_source domain_alias domain_access domain domain_config
The following extensions will be enabled: domain_content, domain_source, domain_alias, domain_access, domain, domain_config
Do you really want to continue? (y/n): y
domain was enabled successfully.                                                                             [ok]
domain defines the following permissions: access inactive domains, use domain switcher block, administer domains, create domains, delete assigned domains, edit assigned domains, view domain information
domain_access was enabled successfully.                                                                      [ok]
domain_access defines the following permissions: assign editors to any domain, assign domain editors, create domain content, delete domain content, edit domain content, publish to any assigned domain, publish to any domain, view unpublished domain content, create article content on assigned domains, delete article content on assigned domains, update article content on assigned domains, create page content on assigned domains, delete page content on assigned domains, update page content on assigned domains
domain_alias was enabled successfully.                                                                       [ok]
domain_config was enabled successfully.                                                                      [ok]
domain_content was enabled successfully.                                                                     [ok]
domain_content defines the following permissions: access domain content, access domain content editors
domain_source was enabled successfully.                                                                      [ok]
devel@comp ~/projects/drupal/test/drupal-8.2.4 $ [] drush rs
HTTP server listening on 127.0.0.1, port 8888 (see http://127.0.0.1:8888/), serving site default, logged in as admin...
PHP 7.0.8-0ubuntu0.16.04.3 Development Server started at Thu Dec  8 17:56:50 2016
Listening on http://127.0.0.1:8888
Document root is /home/devel/projects/drupal/test/drupal-8.2.4
Press Ctrl-C to quit.

в hosts завернул site1.local и site2.local на 127.0.0.1
сделал для каждого по уникальной странице - domain работает,
единственно, что не понравилось - :8888 и необходимость в будущем править этот конфиг на продакшн,
но и это решаемо)))

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

0 Спасибо
Аватар пользователя multpix
multpix 10 месяцев назад
Ху ли GUN написал:

опубликую ка я к вечеру свой перевод про водбу и контейнеры)
http://drupal.ru/node/131184

0 Спасибо
Аватар пользователя Studio VIZA
Studio VIZA 10 месяцев назад

Ху ли GUN
Li Si Zsinn

0 Спасибо