通过.htaccess运行Magento商店

时间:2012-04-24 10:38:41

标签: .htaccess magento magento-1.6

我有一个相当简单的问题,我认为这个问题很容易设置,但证明很难。

我安装了Magento,我希望它有2个网站,每个网站有两种语言。然后,我继续在英国网球网上加载英国商店。如果我继续使用法国域名,它就会加载法国商店。

这就是它现在的工作方式(INCORRECT):

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)

这就是我喜欢它的工作方式(正确):

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

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

在htaccess中,我正在运行一个脚本来运行正确的网站,但我认为如果需要我还应该能够运行商店代码,如下所示:

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

但由于某种原因,这不起作用。有没有人知道让这个工作的正确方法。通过加载商店视图而不是网站,每次它都会减少我在管理员中必须完成的配置量。

任何帮助都非常感激。

1 个答案:

答案 0 :(得分:0)

你可以通过代码来完成。例如:

<强>的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);