thiết bị với các URL khác nhau Magento Multistore / Tên miền (Magento 1 và Magento 2)

hình ảnhLàm thế nào để thiết lập Magento 1.7 một, vì vậy bạn có URL khác nhau hoặc. Tên miền cửa hàng khác nhau / các cửa hàng hoặc. trang web có thể đạt được?

Trước đây, đây là index.php đạt. Bây giờ điều này có thể được trực tiếp trên .htaccess thể đạt được.

hình ảnhTrong bước đầu tiên bạn nhận ra Codes sự khác nhau trang web. sau đó .htaccess được mở ra và sau đó tất cả các con đường xuống sau thêm cho mỗi trang web:

SetEnvIf Host www\.Domain1\.de MAGE_RUN_CODE=base
SetEnvIf Host www\.Domain1\.de MAGE_RUN_TYPE=website
SetEnvIf Host ^Domain1\.de MAGE_RUN_CODE=base
SetEnvIf Host ^Domain1\.de MAGE_RUN_TYPE=website

dòng 1 và 2 là những “khi nào – sau đó” một. dòng 3 và 4 có sẵn trong trường hợp tên miền được nhập không có www.
Phẩm giá cho Domain 2 Mã trang web với tên miền 2 của anh ấy, Sau đó, đến chưa

SetEnvIf Host www\.Domain2\.de MAGE_RUN_CODE=domain2
SetEnvIf Host www\.Domain2\.de MAGE_RUN_TYPE=website
SetEnvIf Host ^Domain2\.de MAGE_RUN_CODE=domain2
SetEnvIf Host ^Domain2\.de MAGE_RUN_TYPE=website

Nếu nhiều URL để trỏ đến một và cùng một trang web, điều này cũng có thể được thêm ví dụ.

SetEnvIf Host www\.Domain2\.de MAGE_RUN_CODE=domain2
SetEnvIf Host www\.Domain2\.de MAGE_RUN_TYPE=website
SetEnvIf Host ^Domain2\.de MAGE_RUN_CODE=domain2
SetEnvIf Host ^Domain2\.de MAGE_RUN_TYPE=website
SetEnvIf Host www\.Domain3\.de MAGE_RUN_CODE=domain2
SetEnvIf Host www\.Domain3\.de MAGE_RUN_TYPE=website
SetEnvIf Host ^Domain3\.de MAGE_RUN_CODE=domain2
SetEnvIf Host ^Domain3\.de MAGE_RUN_TYPE=website

Nếu chỉ có một cửa hàng được giải quyết, thấy mã chèn như thế này:

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

Trong trường hợp của một lần xem cửa hàng sau đó như vậy

SetEnvIf Host www\.Domain2\.de MAGE_RUN_CODE=domain2
SetEnvIf Host ^Domain2\.de MAGE_RUN_CODE=domain2

Trong một số trường hợp (cấu hình máy chủ nhất định) nó có thể là, rằng điều này là không đủ một mình. Ở đây người ta có được trong index.php làm cho một sự thay đổi nhỏ. Ở đây sau đó là mã

/* Store hoặc code website */
$mageRunCode = isset($_SERVER['MAGE_RUN_CODE']) ? $_SERVER['MAGE_RUN_CODE'] : '';

/* Chạy cửa hàng hoặc trang web chạy */
$mageRunType = isset($_SERVER['MAGE_RUN_TYPE']) ? $_SERVER['MAGE_RUN_TYPE'] : 'cửa hàng';

pháp sư::chạy($mageRunCode, $mageRunType);

trong

/* Store hoặc code website */
$mageRunCode = isset($_SERVER['REDIRECT_MAGE_RUN_CODE']) ? $_SERVER['REDIRECT_MAGE_RUN_CODE'] : '';

/* Chạy cửa hàng hoặc trang web chạy */
$mageRunType = isset($_SERVER['REDIRECT_MAGE_RUN_TYPE']) ? $_SERVER['REDIRECT_MAGE_RUN_TYPE'] : 'cửa hàng';

pháp sư::chạy($mageRunCode, $mageRunType);

thay đổi. Có một chuyển hướng sau đó được kích hoạt tại các máy chủ.

Các bài viết với thông tin về việc trao đổi của cửa hàng, trang web vv. có trong điều này và trong điều này lối vào.

CẬP NHẬT từ 06.09.2019

Sau khi cập nhật máy chủ trên Ubuntu 18.04 làm việc các nắn tại mỗi địa điểm không còn nữa và nó đã trở thành tiêu chuẩn- / trang web chính đạo. Đó là không còn có thể đạt được các cửa hàng mong muốn các URL.

Để sửa lỗi này, nó là cần thiết để o.g. để thực hiện thay đổi trong index.php đảo ngược và một lần nữa mã gốc

/* Store hoặc code website */
$mageRunCode = isset($_SERVER['MAGE_RUN_CODE']) ? $_SERVER['MAGE_RUN_CODE'] : '';

/* Chạy cửa hàng hoặc trang web chạy */
$mageRunType = isset($_SERVER['MAGE_RUN_TYPE']) ? $_SERVER['MAGE_RUN_TYPE'] : 'cửa hàng';

pháp sư::chạy($mageRunCode, $mageRunType);

sử dụng.

Được sử dụng trong các phiên bản Magento 1.7-1.9 câu hỏi, bình luận, gợi ý? Sẵn sàng trực tiếp hoặc là một lời nhận xét.

Magento 2.x này được thực hiện tương tự.

Về cơ bản, nó sẽ là khá đủ để làm chỉ mục trong .htaccess (như mô tả ở trên). Nếu đây là không đủ, kann auch mit der index.php (neuerdings im Ordner /pub/) gearbeitet werden. Đối với tôi nó làm việc trong hầu hết các trường hợp với việc điều chỉnh .htaccess.

Nếu không, bạn mặc vào dòng index.php sau (tại lối ra })

$params = $ _SERVER;
nếu( in_array($params["HTTP_HOST"], mảng("www.meinewunschdomain.de","meinewunschdomain.de")) ){
	$params[\Magento  Store  mẫu  StoreManager::PARAM_RUN_CODE] = 'Codedesstoreviews';
	$params[\Magento  Store  mẫu  StoreManager::PARAM_RUN_TYPE] = 'Cửa hàng';
}khác{
	$params[\Magento  Store  mẫu  StoreManager::PARAM_RUN_CODE] = 'Codedesstandardstoreviews';
	$params[\Magento  Store  mẫu  StoreManager::PARAM_RUN_TYPE] = 'Cửa hàng';
}

“codedesstoreviews” đây là StoreView đặc biệt, khác với mặc định. bạn có URL cơ sở như bình thường ví dụ. luôn luôn là một miền .com và chỉ muốn sử dụng cho các cửa hàng Đức xem các tên miền .com, điều này sẽ ví dụ. Sun có thể trông giống như trên.

cập nhật từ 05.05.2021

Was in Magento 2.2 noch funktionierte, funktionierte in der nächsten Version schon nicht mehr. Hier wurde dann zu folgendem Code geraten:


$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;
    }

(es kann übrigens einfach anstelle von “cửa hàng” das Wort “trang mạng” được sử dụng, wenn man den Code der jeweiligen Website verwenden möchte bzw. die Website aufrufen will.

cập nhật từ 12.08.2021

Leider funktionierte dieser Code bei Magento 2.4.2 schon wieder nicht mehr und so kam -wie schon bei Magento 1- wieder die .htaccess ins Spiel. Eine Anpassung der index.php ist dann nicht mehr notwendig bzw. überflüssig.

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

In diesem Fall habe ich mal den Code einer Website verwendet, da ich gerade diesen benötigte. Wenn man anstelle der o.g. Domain eine Subdomain verwenden will, einfach das ^durch die entsprechende Subdomain ersetzen.

Genutzt in vielen Magento Versionen. câu hỏi, bình luận, gợi ý? Sẵn sàng trực tiếp hoặc là một lời nhận xét.

Xuất bản bởi sợi Dệt

từ 2009 Tôi đã làm việc chặt chẽ với Magento. Tôi bắt đầu với việc tạo ra và hoạt động của các cửa hàng B2C. Điều này đã được mở rộng thông qua công việc của tôi trong lĩnh vực logistics. Điều này dẫn đến hệ thống B2E đầu tiên chuyên. Hôm nay tôi làm việc ngày một ngày với B2C thú vị, B2B- và các dự án B2E và báo cáo trong blog này về những thách thức và đưa ra lời khuyên trong cuộc.

Một nhận xét về “thiết bị với các URL khác nhau Magento Multistore / Tên miền (Magento 1 và Magento 2)”

Để lại một trả lời

Địa chỉ email của bạn sẽ không được công bố. Các trường bắt buộc được đánh dấu *