Многосайтовость в Битриксе на разных доменах. Многосайтовость битрикс


Многосайтовость Битрикс

Клиенту нужно было сделать несколько сайтов, основной site.com и региональные poddomen.site.com, … на поддоменах. Для этого было выбрано решение многосайтовости от компании Битрикс.

Техническое задание:

Настройка

Хостинг

Устанавливаем битрикс в директорию site.com.

С помощью программы PuTTY создаем симлинки к папкам upload и bitrix.

Заходим на poddomen.site.com по SSH, и пишем в консоли следующие команды:

ln -s /путь-до-папки/site.com/public_html/bitrix /путь-до-папки/poddomen.site.com/public_html ln -s /путь-до-папки/site.com/public_html/upload /путь-до-папки/poddomen.site.com/public_html

В инструкции на сайте Бегет я нашел такие команды:

cd ~/poddomen.site.com/public_html ln -s $HOME/site.com/public_html/bitrix bitrix ln -s $HOME/site.com/public_html/upload upload

Здесь как мы видим сначала переходим на poddomen.site.com, а потом уже создаем ссылки. Если у Вас тот же хостер, советую использовать последний вариант.

Копируем файлы .access.php и index.php в корневую директорию регионального сайта.

Настраиваем общий доступ к папкам bitrix и upload. Для этого переходим на site.com/bitrix/ в файловом менеджере Beget. В меню находим ИНСТРУМЕНТЫ — НАСТРОИТЬ ОБЩИЙ ДОСТУП К ТЕКУЩЕЙ ДИРЕКТОРИИ — выбираем ЧТЕНИЕ И ЗАПИСЬ, ВКЛЮЧАЯ ВЛОЖЕННЫЕ ПАПКИ, нажимаем Открыть доступ.

Затем переходим на site.com/upload/ и проделываем то же самое.

Если все сделано правильно, на этих папках появиться соответствующий значок.

Административная панель CMS

В Битрикс заходим — Настройки — Настройки продукта — Сайты — Список сайтов — Кнопка «Добавить сайт».

Указываем:

Не забудем проверить настройки основного сайта. При установке по умолчанию там не указаны важные пункты.

Еще файлы

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

Обязательно перекиньте на поддомен .htaccess и urlrewrite.php

Мета теги title для регионов

Так как инфоблок каталога один для всех сайтов, необходимо решение для приведения title к следующему виду.

Задача как оказалась не из легких, в коробке Битрикс с их SEO для инфоблоков такого решения не нашлось. Техническая поддержка посоветовала использовать Произвольные поля для разделов, и свойства инфоблока для элементов под каждый регион.

Но по моему это самое наихудшее решение, которое только можно придумать. Прописать title для каждого раздела, товара и региона — это просто супер трудозатратная и бестолковая работа.

Предположим у нас на сайте 100 разделов, 2000 товаров и 20 регионов. 2100*20 = 42000. Т.е. контент менеджеру надо вручную заполнить 42000 произвольных полей и свойств. Жесть.

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

А там я нашел следующее — SEO: Генерация и управление мета-тегами.

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

Заходим в Настройки — Настройки продукта — Настройки модулей — SEO: Генерация и управление мета-тегами. В пункте — «Время кэширования запросов на страницах сайта для ключей/правил» ставим значение 0 (ноль).

Описывать настройки и работу самого модуля я не буду, так как:

Изменение шаблона по SITE_ID

Чтобы не создавать по десятку шаблонов, можно просто написать условия для выведения различной контактной информации в основном шаблоне используя условие по SITE_ID.

Пример кода:

<? $site_id = SITE_ID; if ($site_id == s1) { ?>

    <div>+7(495) 265-72-22</div>

<? } else { ?>

    <div>+7(499) 555-33-33</div>

<? } ?>

Заменит телефон на всех сайтах отличных от s1.

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

saytov.com

Многосайтовость в Битриксе на разных доменах

Многосайтовость

Привет, Друзья!

Сегодня мы поговорим о том, как сделать несколько совершенно разных сайтов на одной установке Битрикса. Раньше я эту тему уже освещал (вот ссылка на видео), но  тогда мы говорили о нескольких сайтах на одном домене, сейчас посмотрим как это сделать на разных доменах.

Вот, например, купили мы Битрикс один раз и сделали на нем корпоративный сайт. А через годик вдруг решили – давайте-ка мы еще и интернет-магазин сделаем. Так вот, на Битриксе Вам не придется покупать еще лицензию для создания этого нового сайта.

Битрикс дает нам возможность сделать 2 сайта на одной купленной лицензии. Или больше сайтов, смотря сколько расширений лицензии для дополнительных сайтов Вы купили (они в разы дешевле отдельной лицензии).И это могут быть совершенно разные сайты. Один может быть простым сайтом компании, а второй может быть интернет-магазином. Объединять их будет только общая админка, общие бюджеты пользователей, общие шаблоны страниц и некоторые другие вещи, подробнее в видео ниже. И еще, эти сайты должны стоять на одном физическом сервере.

Для установки дополнительных сайтов на Битриксе в режиме многосайтовости на разных доменах не надо ставить движок еще раз, но надо настраивать хостинг и покупать новые домены или настраивать поддомены у существующих.

Это видео не для всех. Оно немного сложновато будет для тех, кто совсем не разбирается в серверах, никогда не слышал слова Linux и совсем не понимает что такое консоль и SSH.

Я показываю реальный пример, как сделать 2 разных сайта – на домене ad-files.ru я поставлю типовой интернет-магазин, а на домене shop-usability.ru я разверну корпоративный сайт производственной компании. Все настройки я буду делать на своем VPS под управлением Debian GNU/Linux, с помощью панели управления ISP manager, файлового менеджера WinSCP, SSH консоли PuTTY и прямых рук :)

Ну что, смотрим:

На всякий случай повторю ссылку на учебный курс от разработчиков про многосайтовость: ссылка

На этом сегодня все! Не забываем жать на социальные кнопки слева и отписываться в комментах!

blog.web-shoper.ru

Битрикс. Многосайтовость без использования дополнительной лицензии

07.05.201613.05.2017

Иногда возникает необходимость на одной лицензии 1С-Битрикс запустить несколько сайтов. Именно для этого случая и предназначена дополнительная лицензия в структуре лицензирования программных продуктов 1С-Битрикс. И для крупных сайтов многосайтовость должна быть именно на разных лицензиях, чтобы корректно была реализована привязка сущностей к конкретному сайту. Однако, когда у вас стоит задача запустить корпоративный сайт, блог, форум ... и все это должно быть на разных доменах, вот тут возникает вопрос: "А зачем платить больше"

Иногда возникает необходимость на одной лицензии 1С-Битрикс запустить несколько сайтов. Именно для этого случая и предназначена дополнительная лицензия в структуре лицензирования программных продуктов 1С-Битрикс. И для крупных сайтов многосайтовость должна быть именно на разных лицензиях, чтобы корректно была реализована привязка сущностей к конкретному сайту. Однако, когда у вас стоит задача запустить корпоративный сайт, блог, форум ... и все это должно быть на разных доменах, вот тут возникает вопрос: "А зачем платить больше".

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

Итак, у нас имеется VPS (или полноценный выделенный сервер - не важно). Делаем обычную многосайтовость на доменах (т.е. на стороне сервера под каждый домен создаем отдельные папки, а папки ядра подтягиваем символическими ссылками) за одним исключением: в базе данных сайта мы не заводим дополнительный сайт! Т.е. в админке (настройки-настройки продукта - сайты - список сайтов) у нас остается один единственный сайт.

А дальше имеем танцы с бубном:)

Создаем шаблон под наш дополнительный сайт по всем правилам создания шаблона и этот шаблон применяем для условия выполнения выражения php. Для этого открываем для редактирования сайт в настройках продукта, прокручиваем экран до выбора шаблонов, выбираем нужный шаблон, задаем сортировку применения правил (она должна быть меньше сортировки основного сайта). Тип условия устанавливаем "Выражение php" и в поле с выражением задаем значение:

strpos($_SERVER['HTTP_HOST'],'newdomain.pai-bx.com')!==false

Вместо 'newdomain.pai-bx.com' вы, конечно же задаете свой домен :)

Вот такой вот несложный фокус позволит сделать несколько сайтов на одном домене, на одной лицензии. Только в лицензии не забудьте указать все домены, по которым может отвечать ваш сайт.

pai-bx.com


Prostoy-Site | Все права защищены © 2018 | Карта сайта