Огненный Лис, я плачу 300 рублей в месяц за безлимит. Около 10 сайтов. Правда посещалка на всех маленькая, но открываются быстро.
Пробовал несколько безлимитных, ни один из них так не радовал, как радует мой хостинг. Пользуюсь ТаймВебом (http://timeweb.com/ru/services/hosting/), плачу 299 за 25 сайтов. Так как здесь, ни где мои сайты лучше не летали.
Пользуюсь хостингом с ограничением по количеству сайтов. В какой-то момент достиг потолка и понял, что переплачивать только лишь за возможность создавать бОльшее их число не хочется, поэтому решил задаться вопросом: возможно ли в рамках одного сайта создать несколько?
Решение нашлось, понадобится добавить лишь несколько строчек кода, об этом ниже)
В принципе, я подготовил архив с уже подредактированными файлами – они для версии 2.5.1. Необходимо просто закинуть на хостинг, заменив имеющиеся. Файл можно скачать здесь: cloud.mail.ru/public/HSSo/xvgxtdPEs
\install\steps\config.php
\system\controllers\admin\actions\install_ftp.php
\system\core\config.php
Добавится один новый – \system\config\domen.config.php
Принцип работы прост: при заходе с разных доменов на сайт, CMS подключается к разным базам данных, либо той же, но с другими настройками (какие — укажете при установке). Обо всём подробнее ниже.
ПС. В дальнейшем, при установке новых сайтов, здесь будут добавляться правила вида: если на сайт был заход с такого-то домена, то открывается такой-то файл конфигурации. Внимание! Прежде чем продолжить работу над сайтом, необходимо изменить доменное имя "mysite.ru" на имя вашего первого (основного) домена!
Все изменения сопровождаются комментариями в самих файлах.
В общем-то ни чего сложного нет, как видите. Этот способ был опробованы на версиях 2.4.0 и 2.5.1 – всё отлично работает!
Установка
Рекомендую производить установку первого сайта обычным образом, с применением стандартной сборки CMS. Иначе, если вы замените файлы до установки первого (основного) сайта, необходимо будет подредактировать следующие файлы:
\system\config\domen.config.php — здесь понадобится удалить лишнюю строку
доменное имя "mysite.ru" на доменное имя первого (основного) сайта.
\system\config\your-domen.ru-config.php — заменяем имя файла на "config.php" (ПС. Здесь "your-domen.ru" — имя домена, с которого вы производили установку первого (основного) сайта).
После того, как вы закончили с установкой первого сайта, можно подходить к установке второго, и последующих – процедура установки каждого следующего сайта, начиная со второго, одинакова:
1. Заходим на нужный нам домен (например, "site2.ru"), добавляем через слеш название папки инсталляции (например, так: "site2.ru/install"), переходим по получившемуся адресу;
2. Здесь вполне стандартная установка, кроме двух пунктов:
– на вкладке, где указываем расположение кэша и загружаемых файлов, желательно (не обязательно) указать другое расположение, и скопировать туда соответствующие предустановленные папки ("cache" и "upload");
– на вкладке, где прописываем базу данных и префикс, мы должны указать другую базу данных, либо префикс – иначе оба ваших сайта будут работать с одними и теми же данными.
3. Радуемся)
Комментарии и замечания
Во время установки второго сайта на первой вкладке я менял названия папок следующим образом: "\cache" на "\cache_domen-name", "\upload" на "\upload_domen-name". На второй вкладке я исправлял только префикс с "cms_" на "cms_domen-name_", базу данных я оставлял прежней. Здесь важное замечание: ни когда не пишите префиксы с точками, например так: "cms_site2.ru_" – работать не будет, проверенно!
Cron не работает, увы.
PHP Warning:include(system/config/domen.config.php): failed to open stream: No such file or directory in /home/x/мой_логин_на_хостинге/папка_сайта/public_html/system/core/config.php on line 50
PHP Warning:include(system/config/domen.config.php): failed to open stream: No such file or directory in /home/x/мой_логин_на_хостинге/папка_сайта/public_html/system/core/config.php on line 50
PHP Warning:include(): Failed opening 'system/config/domen.config.php'for inclusion (include_path='.:/opt/php53/share/pear:/usr/share/pear') in /home/x/мой_логин_на_хостинге/папка_сайта/public_html/system/core/config.php on line 50
PHP Warning:include(system/config/domen.config.php): failed to open stream: No such file or directory in /home/x/мой_логин_на_хостинге/папка_сайта/public_html/system/core/config.php on line 50
PHP Warning:include(system/config/domen.config.php): failed to open stream: No such file or directory in /home/x/мой_логин_на_хостинге/папка_сайта/public_html/system/core/config.php on line 50
PHP Warning:include(): Failed opening 'system/config/domen.config.php'for inclusion (include_path='.:/opt/php53/share/pear:/usr/share/pear') in /home/x/мой_логин_на_хостинге/папка_сайта/public_html/system/core/config.php on line 50
PHP Warning:include(/home/x/мой_логин_на_хостинге/папка_сайта/public_html/system/config): failed to open stream: No such device in /home/x/мой_логин_на_хостинге/папка_сайта/public_html/system/core/config.php on line 168
PHP Warning:include(): Failed opening '/home/x/мой_логин_на_хостинге/папка_сайта/public_html/system/config/'for inclusion (include_path='.:/opt/php53/share/pear:/usr/share/pear') in /home/x/мой_логин_на_хостинге/папка_сайта/public_html/system/core/config.php on line 168
Обновлять не пробовал. ИМХО, это возможно, но производить обновление придётся в обязательном порядке для каждого "внутреннего сайта", ни кого не упуская, так как системные (основные) файлы у них у всех будут одни и теже.