Magento 1.9 несколько сайтов на разных доменах


13

Я прочитал и просмотрел все, что связано с несколькими веб-сайтами для Magento, но я все еще не могу правильно настроить обработку разных доменов с разными веб-сайтами Magento.

Может ли кто-нибудь дать мне знать шаг за шагом, как правильно настроить виртуальные хосты и htaccess или / и index.php?

Я знаю, что настроить несколько веб-сайтов в поддоменах / каталогах легко, но мне нравится работать с разными доменами.

Я установил все в админке Magento:

1-й магазин:

  • домен: abc.com
  • код сайта: домен1

2-й магазин:

  • домен: xyz.com
  • код сайта: домен2

Я настроил Apache /etc/httpd/conf/httpd.confсо следующими корнями документа:

  • /home/admin/domains/abc.com/public_html
  • /home/admin/domains/xyz.com/public_html

Что я должен поместить во второй каталог домена (.htaccess, index.php? Я должен скопировать его из первого?)


Какие 404 вы получаете? 404 со стилем Magento или напрямую с сервера?
mbalparda

1
Зачем вам второй каталог домена? Magento построен для обработки нескольких просмотров магазина. Вы должны использовать один и тот же корень документа для обоих сайтов и просто установить код веб-сайта / магазина в качестве переменной среды в конфигурации Apache для каждого сайта.
Робби Аверилл

Ответы:


2

Вы можете узнать, как настроить несколько витрин в одной установке Magento, выполнив следующие действия: http://www.ecommercegorilla.com/how-to-set-up-multiple-store-fronts-with-magento/

Этот метод работает для любого поста магазина Magento CE 1.4

В конце статьи вы увидите, что есть два метода, один из которых использует отдельные каталоги для каждого домена, а второй - позволяет использовать домены-указатели.

Если вы хотите, чтобы клиенты получали заказы в домене магазина, а не в одном общем домене по протоколу SSL, вам нужно использовать метод отдельных каталогов. В нем описано, как настроить символические ссылки, чтобы магазин правильно извлекал файлы, и как изменить index.php каждого магазина, чтобы назначить правильный код веб-сайта / магазина.


10

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

Шаг 1: Укажите все домены на корневой каталог Magento, то есть на тот же корень документа в конфигурации веб-сервера (Apache или Nginx).

Шаг 2. Настройте доменные имена в качестве базовых URL-адресов для каждого веб-сайта в разделе «Конфигурация системы» в панели администрирования Magento.

Шаг 3. Установите хранилище или веб-сайт для каждого домена в качестве переменной среды в .htaccessконфигурации веб-сервера или в ее конфигурации.

  • Пример с сайтами, как указано в вопросе:

    SetEnv MAGE_RUN_TYPE website
    SetEnvIf Host abc\.com MAGE_RUN_CODE=domain1
    SetEnvIf Host xyz\.com MAGE_RUN_CODE=domain2
  • Пример с просмотром магазина вместо веб-сайтов

    SetEnv MAGE_RUN_TYPE store
    SetEnvIf Host abc\.com MAGE_RUN_CODE=store_code_1
    SetEnvIf Host xyz\.com MAGE_RUN_CODE=store_code_2

    Эти конфигурации проверяют, содержит ли домен «abc.com» или «xyz.com», что я считаю полезным также для сопоставления поддоменов или тестовых систем, таких как abc.com.testserver.com или test.abc.com, используя тот же .htaccess. файл. Если вы хотите точное соответствие, замените abc\.comна^abc\.com$

Шаг 4: Очистите кеш и получите доступ к своим доменам.


Я добавил некоторые детали, чтобы сделать его каноническим ответом, который я ожидал, надеюсь, вы не возражаете
Фабиан Шменглер,

Изменение это хорошо, если это хорошо. Спасибо :)
Аман Шривастава

когда я пишу SetEnv MAGE_RUN_TYPE сайта строки в моем .htaccess сайте файл не открыть это дает ошибку 500
Балки Пармар

Можете ли вы поделиться тем, что вы добавили в свой файл .htaccess @jigsparmar
Аман Шривастава

2

Вы должны скопировать index.phpи .htaccessфайлы на ваш второй каталог домена.

После того:

Откройте index.phpфайл и найдите эту строку (это последняя строка файла):

Mage::run($mageRunCode, $mageRunType);

Добавьте следующий код прямо перед кодом:

$mageRunCode = 'YOUR_WEBSITE_CODE';

$mageRunType = 'website';

Наконец, вам нужно создать символические ссылки, указывающие на несколько каталогов:

ln -s your_magento_root_directory / app ./app

ln -s your_magento_root_directory / errors ./errors

ln -s your_magento_root_directory / includes ./includes

ln -s your_magento_root_directory / js ./js

ln -s your_magento_root_directory / lib ./lib

ln -s your_magento_root_directory / media ./media

ln -s your_magento_root_directory / skin ./skin

ln -s your_magento_root_directory / var ./var

Источник: http://www.crucialwebhost.com/kb/how-to-setup-multiple-magento-stores/


Как я могу запустить выше команд в Windows
Zus

2

Вы можете выполнить следующие шаги, чтобы настроить свой мульти магазин в magento:

1) Все домены, которые вы добавляете как другие, например xyz.com, укажите этот домен на основной URL-адрес веб-сайта magento. abc.com
2) Откройте вашу админ-панель и добавьте вид «Веб-сайт», «Магазин и магазин» в свой «Управляющий магазин».
3) Откройте файл .htaccess и добавьте код ниже

SetEnvIf Host. xyz.com. MAGE_RUN_CODE = domain2
SetEnvIf Host. xyz.com. MAGE_RUN_TYPE = сайт

4) Перейдите в раздел конфигурации> Интернет, измените вид своего магазина и добавьте URL своего домена.
5) Сохранить и очистить кеш

Это настроит мульти-сайт. Дайте мне знать, если это сработает для вас.


0

После настройки Magento MultiStore через бэкэнд, вам нужно внести несколько изменений в ваш файл .htacces

После создания вторичного домена добавьте следующий код в ваш файл .htaccess.

SetEnvIf Host www\.newstore\.com MAGE_RUN_CODE=domain1_com
SetEnvIf Host www\.newstore\.com MAGE_RUN_TYPE=website
SetEnvIf Host ^newstore\.com MAGE_RUN_CODE=domain1_com
SetEnvIf Host ^newstore\.com MAGE_RUN_TYPE=website

Для более подробной информации, вы можете обратиться к следующим ссылкам

Magento 1: https://www.cloudways.com/blog/how-to-setup-multiple-stores-on-magento/

Magento 2: https://www.cloudways.com/blog/create-and-configure-multistore-magento-2/

Обзор, проблемы и ошибки: https://www.cloudways.com/blog/magento-multi-store-importance-and-some-common-issues/

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.