Можно ли сделать одну установку, а из этой установки сделать несколько магазинов с разными базами данных?
Что-то вроде этого я сделаю одну установку на domain.1 с базой данных, а от администратора я создам новый веб-сайт и магазин в новой базе данных для domain.2 .
Я знаю, что с одной базой данных можно создать несколько магазинов. Но может ли это быть одинаково с разными базами данных?
Ответы:
Отличный ответ, сларек. Мы сделали что-то очень похожее. Вместо того, чтобы редактировать index.php, мы устанавливаем отдельные папки вне кодовой базы magento и включаем mage.php из этих папок, а затем редактируем etc_dir (и другие dir), как в вашем методе выше.
структура папок:
/ www / client1
/ www / client2
/ www / client3
/ www / clientX
/ www / magento
Внутри каждой клиентской папки находятся:
в /www/clientx/index.php
define('MAGENTO_ROOT', '/www/magento');
... (остальная часть index.php работает как обычно) ...
$client = isset($_SERVER['CLIENT_ID']) ? $_SERVER['CLIENT_ID'] : '';] Mage::run($mageRunCode, $mageRunType, array('etc_dir'=>'../'.$client));
Мы установили
источник
Я не думаю, что это возможно из коробки. Magento поддерживает конфигурацию базы данных master / slave, но вы должны иметь ее для всех хранилищ.
И я не думаю, что это легко сделать с помощью пользовательского кодирования, поскольку магазины хранятся в базе данных.
Поэтому, в зависимости от представления магазина, вам нужно знать, к какой базе данных подключаться, но для того, чтобы узнать представление магазина, вам нужно запросить базу данных. Так ты бегаешь по кругу.
источник
Вы хотите иметь несколько отдельных хранилищ со своими базами данных, использующими единую кодовую базу?
Ну, нет простого и рекомендуемого способа сделать это. При этом мы можем видеть, что МОЖЕТ быть сделано:
Информация о базе данных поступает из одного XML-файла: app / etc / local.xml Этот файл загружается из app / Mage.php, поэтому, если вы измените этот файл, вы можете теоретически решить, какой файл конфигурации вы собираетесь загрузить (в зависимости от желаемого условие, такое как доменное имя). Вуаля, другой домен, другая база данных. Теперь идет часть плохих новостей (тм).
источник
я только что нашел это расширение:
https://github.com/steverobbins/Magento-Multi_Client
источник
Вам просто нужно создать новую папку для файлов конфигурации и в index.php добавить массив опций в Mage :: Run ().
В этой папке вы будете иметь все то же содержимое, что и app / etc /, включая папку modules.
Первый домен:
Второй домен:
это скажет Magento, где находятся файлы конфигурации для домена.
источник
Какова ваша главная цель? Другая область администрирования или более простая обработка вашего исходного кода?
Я бы сделал это с помощью «локальных» каталогов и файлов и связанных (ln -s) общих каталогов и файлов.
/ www / common / www / shop1 / www / shop2
общий
"местный"
Но может быть немного запутанным.
источник