Magento multi-magasin appareil avec des URL différentes / Domaines (Magento 1 und Magento 2)

ImageComment mettre en place Magento 1.7 un, de sorte que, URL différente ou. Domaines divers commerces / Magasins bzw. Sites Web peut atteindre?

Auparavant, c'était la index.php atteint. Maintenant, cela ne pourra, directement sur la .htaccess atteint.

ImageDans la première étape on réalise l' Codes les diverses Sites Web. Par la suite, la Htaccess. Et ouvert vers le bas de la suivante Code ajoutées pour chaque site:

SetEnvIf Host www  .Domain1  .de MAGE_RUN_CODE = base
SetEnvIf Host www  .Domain1  .de MAGE_RUN_TYPE = site Web
SetEnvIf Host ^ Domain1  .de MAGE_RUN_CODE = base
SetEnvIf Host ^ Domain1  .de MAGE_RUN_TYPE = site Web

La ligne 1 et 2 donne “quand – puis” un. La ligne 3 et 4 disponible dans le cas où le domaine est entré sans www.
Dignité pour le domaine 2 der Site Web Code de domain2 être, serait alors

SetEnvIf Host www  .Domain2  .de MAGE_RUN_CODE = domain2
SetEnvIf Host www  .Domain2  .de MAGE_RUN_TYPE = site Web
SetEnvIf Host ^ Domaine2  .de MAGE_RUN_CODE = domaine2
SetEnvIf Host ^ Domain2  .de MAGE_RUN_TYPE = site Web

Si plusieurs URL pour pointer vers un seul et même site web, cela peut aussi être ajouté par exemple.

SetEnvIf Host www  .Domain2  .de MAGE_RUN_CODE = domain2
SetEnvIf Host www  .Domain2  .de MAGE_RUN_TYPE = site Web
SetEnvIf Host ^ Domaine2  .de MAGE_RUN_CODE = domaine2
SetEnvIf Host ^ Domain2  .de MAGE_RUN_TYPE = site Web
SetEnvIf Host www  .Domain3  .de MAGE_RUN_CODE = domain2
SetEnvIf Host www  .Domain3  .de MAGE_RUN_TYPE = site Web
SetEnvIf Host ^ Domaine3  .de MAGE_RUN_CODE = domaine2
SetEnvIf Host ^ Domain3  .de MAGE_RUN_TYPE = site Web

Soll nur ein Store angesprochen werden, sähe der einzufügende Code so aus:

SetEnvIf Host www  .Domain2  .de MAGE_RUN_CODE = domain2
SetEnvIf Host www  .Domain2  .de MAGE_RUN_TYPE = store
SetEnvIf Host ^ Domaine2  .de MAGE_RUN_CODE = domaine2
SetEnvIf Host ^ Domain2  .de MAGE_RUN_TYPE = store

Im Falle eines Storeviews dann so

SetEnvIf Host www  .Domain2  .de MAGE_RUN_CODE = domain2
SetEnvIf Host ^ Domaine2  .de MAGE_RUN_CODE = domaine2

In bestimmten Fällen (bestimmte Serverkonfigurationen) kann es sein, dass dies alleine nicht ausreichend ist. Hier müsste man dann noch in der index.php eine kleine Änderung machen. Hier wird dann der Code

/* Magasin ou un code site */
$mageRunCode = isset($_SERVER[«MAGE_RUN_CODE ']) ? $_SERVER[«MAGE_RUN_CODE '] : '';

/* Run store or run website */
$mageRunType = isset($_SERVER['MAGE_RUN_TYPE']) ? $_SERVER['MAGE_RUN_TYPE'] : 'Store';

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

dans

/* Magasin ou un code site */
$mageRunCode = isset($_SERVER['REDIRECT_MAGE_RUN_CODE']) ? $_SERVER['REDIRECT_MAGE_RUN_CODE'] : '';

/* Run store or run website */
$mageRunType = isset($_SERVER['REDIRECT_MAGE_RUN_TYPE']) ? $_SERVER['REDIRECT_MAGE_RUN_TYPE'] : 'Store';

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

modifié. Es wird dann ein Redirect beim Server angestoßen.

Weitere Beiträge mit Informationen zum Wechsel von Stores, Websites etc. gibt es in cette und in cette Eintrag.

MISE À JOUR de 06.09.2019

Après une mise à jour du serveur sur Ubuntu 18.04 travaillé les détournements à chaque site plus et il est devenu la norme- / Site principal dirigé. Il ne fut plus possible d'atteindre les magasins désirés les URL.

Pour résoudre ce problème, il était nécessaire de o.g. de faire des changements dans index.php inversé et à nouveau le code d'origine

/* Magasin ou un code site */
$mageRunCode = isset($_SERVER[«MAGE_RUN_CODE ']) ? $_SERVER[«MAGE_RUN_CODE '] : '';

/* Run store or run website */
$mageRunType = isset($_SERVER['MAGE_RUN_TYPE']) ? $_SERVER['MAGE_RUN_TYPE'] : 'Store';

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

utiliser.

Utilisé dans les versions Magento 1.7-1.9 Demandez, Remarques, Propositions? Nous directement ou comme un commentaire.

2.x Magento cela se fait de la même.

En gros, il sera tout à fait suffisant pour faire que les entrées dans le .htaccess (comme décrit ci-dessus). Si cela ne suffit pas, peut aussi être utilisé avec le index.php (récemment dans le dossier /pub/) être travaillé. Pour moi, il a travaillé dans la plupart des cas avec l'ajustement .htaccess.

Sinon, vous portez dans les lignes suivantes index.php (à la sortie })

$params = $ _SERVER;
si( in_array($params["HTTP_HOST"], gamme("www.meinewunschdomain.de","meinewunschdomain.de")) ){
	$params[\Magento  Store  Model  StoreManager::PARAM_RUN_CODE] = '' codedesstoreviews;
	$params[\Magento  Store  Model  StoreManager::PARAM_RUN_TYPE] = « Magasin »;
}d'autre{
	$params[\Magento  Store  Model  StoreManager::PARAM_RUN_CODE] = '' codedesstandardstoreviews;
	$params[\Magento  Store  Model  StoreManager::PARAM_RUN_TYPE] = « Magasin »;
}

“codedesstoreviews” voici le Storeview spécial, différent de la valeur par défaut. vous avez URL de base comme normale par exemple. toujours un domaine .com et que vous souhaitez utiliser uniquement pour le magasin allemand voir le domaine .com, ce serait par exemple. Sun peut ressembler au-dessus.

Mise à jour de 05.05.2021

Était à Magento 2.2 fonctionnait encore, ne fonctionnait plus dans la prochaine version. Le code suivant a alors été conseillé:


$params = $_SERVER;

switch($_SERVER['HTTP_HOST']) {

        case 'meinewunschdomain.de':
        #case 'www.meinewunschdomain.de':
             $params[\Magento\Store\Model\StoreManager::PARAM_RUN_CODE] = 'codedesstoreviews';
                         $params[\Magento\Store\Model\StoreManager::PARAM_RUN_TYPE] = 'store';
        break;


        case 'meinewunschdomain2.de':
        #case 'www.meinewunschdomain2.de':
             $params[\Magento\Store\Model\StoreManager::PARAM_RUN_CODE] = 'codedesstandardstoreviews';
                         $params[\Magento\Store\Model\StoreManager::PARAM_RUN_TYPE] = 'store';
        break;
    }

(il peut, soit dit en passant, simplement au lieu de “stocker” le mot “site Web” verwendet werden, si vous souhaitez utiliser le code du site Web respectif ou. souhaitez accéder au site.

Mise à jour de 12.08.2021

Malheureusement, ce code a fonctionné sur Magento 2.4.2 encore une fois plus et donc c'est venu - comme avec Magento 1- le .htaccess entre à nouveau en jeu. Un ajustement de l'index.php n'est alors plus nécessaire ou. superflu.

SetEnvIf Host ^(.*)meinewunschdomain.de MAGE_RUN_CODE=codewebsite
SetEnvIf Host ^(.*)meinewunschdomain.de MAGE_RUN_TYPE=website

Dans ce cas, j'ai utilisé une fois le code d'un site Web, parce que j'avais juste besoin de celui-ci. Si au lieu de ce qui précède. domaine veut utiliser un sous-domaine, remplacez simplement le ^ par le sous-domaine approprié.

Utilisé dans de nombreuses versions de Magento. Demandez, Remarques, Propositions? Nous directement ou comme un commentaire.

Publié par Covos

Depuis 2009 Je travaille intensément avec Magento. J'ai commencé avec la création et l'exploitation des magasins B2C. Cela a été prolongé par mon travail dans le secteur de la logistique. Il en est résulté premiers systèmes de B2E spécialisés. Aujourd'hui, je travaille jour par jour avec B2C passionnant, B2B- et les projets B2E et rapports dans ce blog sur les défis et donner des conseils d'initiés.

1 pensée sur “Magento multi-magasin appareil avec des URL différentes / Domaines (Magento 1 und Magento 2)”

Laisser un commentaire

Votre adresse email ne sera pas publié. les champs requis sont indiqués *