2012-04-24 3 views
0

설치가 쉽다고 생각되는 상당히 간단한 질문이 있지만 어렵다고 판명됩니다..htaccess를 통해 Magento Store를 실행하십시오.

저는 Magento 설치가되어 있으며 각각 2 개의 언어로 된 2 개의 웹 사이트를 갖고 싶습니다. 그런 다음 테니스 영국 도메인으로 이동하여 영국 매장에로드합니다. 프랑스 도메인에 가면 프랑스 매장이로드됩니다.

Tennis UK (website) 
Tennis UK (store & store views) 

Tennis FR (website) 
Tennis FR (store & store views) 

Volleyball UK (website) 
Volleyball UK (store & store views) 

Volleyball FR (website) 
Volleyball FR (store & store views) 

이 내가 일을 (CORRECT)를 원합니다 방법은 다음과 같습니다 :

Tennis (website) 
Tennis UK/Tennis FR (stores & store views) 

Volleyball (website) 
Volleyball UK/Volleyball FR (stores & store views) 

htaccess로에서

이는 (INCORRECT) 지금 작업하는 방법입니다 올바른 웹 사이트를 실행하는 스크립트를 실행하고 있지만 필요에 따라 상점 코드를 실행할 수 있어야한다고 생각했습니다.

SetEnvIf Host www\.tennisukdomain\.co.uk MAGE_RUN_CODE=tennis_uk 
SetEnvIf Host www\.tennisukdomain\.co.uk MAGE_RUN_TYPE=store 
SetEnvIf Host ^tennisukdomain\.co.uk MAGE_RUN_CODE=tennis_uk 
SetEnvIf Host ^tennisukdomain\.co.uk MAGE_RUN_TYPE=store 

하지만 어떤 이유로 작동하지 않습니다. 아무도이 작업을 수행하는 올바른 방법을 알고 있습니까? 관리자가해야하는 구성의 양을 줄일 때마다 웹 사이트 대신 저장소보기를로드합니다.

도움을 주시면 감사하겠습니다.

+0

버전 : 예를 들면? "store"는 기본 실행 유형, btw입니다. – benmarks

+0

It 's version 1.6.2 –

+0

빠른 디버그 : open * index.php *와'var_dump ($ _ SERVER)'를 열어'mod_env' 지시어가 제대로 작동하는지 확인하십시오. – benmarks

답변

-1

코드로 수행 할 수 있습니다.

의 index.php 젠토의

$host = explode(':', $_SERVER['HTTP_HOST']); 
$dname = substr($host[0], -3,3); 

switch ($dname) { 
case '.uk': 
    $store = 'tennis_uk'; 
    break; 
case '.fr': 
    $store = 'tennis_uk'; 
    break; 
default: 
    $store = ''; 
} 

Mage::run($store); 
관련 문제