Magento 1.9 plusieurs sites Web sur différents domaines

13

J'ai lu et consulté tout ce qui concerne plusieurs sites Web pour Magento, mais je ne parviens toujours pas à configurer correctement pour gérer différents domaines avec différents sites Web Magento.

Quelqu'un pourrait-il me faire savoir étape par étape, comment configurer correctement les hôtes virtuels et htaccess ou / et index.php?

Je sais que la configuration de plusieurs sites Web dans des sous-domaines / catalogues est facile, mais j'aime que cela fonctionne avec différents domaines.

J'ai tout configuré dans l'admin Magento:

1er magasin:

  • domaine: abc.com
  • code site Web: domain1

2e magasin:

  • domaine: xyz.com
  • code site Web: domain2

J'ai configuré Apache /etc/httpd/conf/httpd.confavec les racines de document suivantes:

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

Que dois-je mettre dans le deuxième répertoire de domaine (.htaccess, index.php? Dois-je le copier du premier?)

sellio
la source
Quel genre de 404 obtenez-vous? une 404 avec le style Magento ou directement depuis le serveur?
mbalparda
1
Pourquoi voulez-vous un deuxième annuaire de domaine? Magento est conçu pour gérer plusieurs vues de magasin. Vous devez utiliser la même racine de document pour les deux sites et simplement définir le code de site Web / magasin comme variable d'environnement dans votre configuration Apache pour chaque site.
Robbie Averill

Réponses:

2

Vous pouvez trouver comment configurer plusieurs vitrines sur une seule installation Magento en suivant: http://www.ecommercegorilla.com/how-to-set-up-multiple-store-fronts-with-magento/

Cette méthode fonctionne pour tout magasin après Magento CE 1.4

Regardez à la fin de l'article, vous verrez qu'il existe deux méthodes, une qui utilise des répertoires distincts pour chaque domaine et une deuxième méthode qui vous permet d'utiliser des domaines de pointeur.

Si vous souhaitez que les clients vérifient le domaine du magasin et non un domaine partagé sous SSL, vous voudrez utiliser la méthode des répertoires distincts. Il décrit comment configurer les liens symboliques afin que le magasin récupère correctement les fichiers et comment modifier le index.php de chaque magasin pour attribuer le bon site Web / code de magasin.

Eirik
la source
10

Vous n'avez pas besoin d'avoir plusieurs répertoires pour plusieurs domaines si vous utilisez une seule instance de magento pour répondre à vos besoins.

Étape 1: Pointez tous les domaines vers le répertoire racine de Magento, c'est-à-dire la même racine de document dans la configuration du serveur Web (Apache ou Nginx).

Étape 2: Configurez les noms de domaine comme URL de base pour chaque site Web dans Configuration système dans le panneau d'administration de Magento.

Étape 3: définissez le magasin ou le site Web pour chaque domaine comme variable d'environnement dans .htaccessou dans la configuration du serveur Web.

  • Exemple avec les sites Web comme indiqué dans la question:

    SetEnv MAGE_RUN_TYPE website
    SetEnvIf Host abc\.com MAGE_RUN_CODE=domain1
    SetEnvIf Host xyz\.com MAGE_RUN_CODE=domain2
  • Exemple avec des vues de magasin au lieu de sites Web

    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

    Ces configurations vérifient si le domaine contient "abc.com" ou "xyz.com", ce que je trouve utile pour faire correspondre également des sous-domaines ou des systèmes de test comme abc.com.testserver.com ou test.abc.com, en utilisant le même .htaccess fichier. Si vous voulez une correspondance exacte, remplacez abc\.compar^abc\.com$

Étape 4: vider le cache et accéder à vos domaines.

Aman Srivastava
la source
J'ai ajouté quelques détails pour en faire la réponse canonique à laquelle je m'attendais, j'espère que cela ne vous dérange pas
Fabian Schmengler
Le changement est bon, si c'est pour de bon. Merci :)
Aman Srivastava
lorsque j'écris la ligne de site Web SetEnv MAGE_RUN_TYPE dans mon site de fichiers .htaccess non ouvert, cela donne l'erreur 500
Jigs Parmar
pouvez-vous partager ce que vous avez ajouté dans votre fichier .htaccess @jigsparmar
Aman Srivastava
2

Vous devez copier index.phpet .htaccessfichiers sur votre deuxième répertoire de domaine.

Après ça:

Ouvrez le index.phpfichier et recherchez cette ligne (c'est la dernière ligne du fichier):

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

Ajoutez le code suivant juste avant le code ci-dessus:

$mageRunCode = 'YOUR_WEBSITE_CODE';

$mageRunType = 'website';

Enfin, vous devez créer des liens symboliques pour pointer vers quelques répertoires:

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

Source: http://www.crucialwebhost.com/kb/how-to-setup-multiple-magento-stores/

Mukesh Chapagain
la source
Comment puis-je exécuter les commandes ci-dessus dans Windows
zus
2

Vous pouvez suivre les étapes ci-dessous pour configurer votre multi-boutique dans magento:

1) Tous les domaines que vous ajoutez comme autres domaines comme xyz.com, pointez ce domaine vers l'url de votre site Web principal magento abc.com
2) ouvrez votre panneau d'administration et ajoutez le site Web, la vue Store et Store dans votre Manage Store
3) ouvrez votre fichier .htaccess et ajoutez sous le code

SetEnvIf Host. xyz.com. MAGE_RUN_CODE =
domaine2 hôte SetEnvIf. xyz.com. MAGE_RUN_TYPE = site Web

4) Allez dans configurations> Web, changez la vue de votre boutique et ajoutez-y l'url de votre domaine.
5) Enregistrer et vider le cache

Cela configurera plusieurs sites Web. Faites-moi savoir si cela fonctionnera pour vous.

Rahul Anand
la source
0

Après avoir configuré Magento MultiStore via le backend, vous devez apporter quelques modifications dans votre fichier .htacces

Après avoir créé le domaine secondaire, ajoutez le code suivant dans votre fichier .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

Pour plus de détails, vous pouvez vous référer aux liens suivants

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/

Présentation, problèmes et confusions: https://www.cloudways.com/blog/magento-multi-store-importance-and-some-common-issues/

AbdurRahman Lakhani
la source