Magento Multistore:将非www重定向到www

时间:2012-06-01 12:04:47

标签: magento

我们正在运行Magento CE 1.6.2,我们想运营另一家商店。我们已正确配置store2.com但我们遇到了问题:

store1.com重定向到www.store1.com:好的 store2.com和www.store2.com重定向到www.store1.com:不行

这是我们的.htaccess:

SetEnvIf Host .*store2.com MAGE_RUN_CODE=store2_com
SetEnvIf Host .*store2.com MAGE_RUN_TYPE=website

要将非www重定向到www,我们正在使用:

RewriteCond %{HTTPS} off
RewriteCond %{HTTP_HOST} !^www\.(.*)$ [NC]
RewriteRule ^(.*)$ http://www.%{HTTP_HOST}/$1 [R=301,L]

RewriteCond %{HTTPS} on
RewriteCond %{HTTP_HOST} !^www\.(.*)$ [NC]
RewriteRule ^(.*)$ https://www.%{HTTP_HOST}/$1 [R=301,L]

此配置不起作用。

我们使用托管域名运行store2.com,并在store1.com和store2.com之间共享托管。

希望你能帮助我们,抱歉我的英语。

感谢您的帮助 昆汀

2 个答案:

答案 0 :(得分:1)

1)确保所有域都指向同一文档根

2)在magento后端为您运行的每个商店/网站指定基本网址(如果它们不同)

3)修改index.php根据域名选择正确的商店/网站

在我们的index.php中我们有类似的东西

switch($_SERVER['HTTP_HOST']) {
    case 'www.example.com':
      $mageRunCode = 'www_exampe_com';
      break;  
    case 'another.example.com':
      $mageRunCode = 'another_example_com';
      break;        
    case 'admin.example.com':  
      $mageRunCode = 'admin';
      break;  
    default:
      $mageRunCode = 'www_example_com';      
  }

}

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

其中www_example_com,another_example_com是在System>中指定的商店代码;商店管理。

<强>更新 此外,我发现了这个教程http://www.magentocommerce.com/knowledge-base/entry/tutorial-multi-site-multi-domain-setup,因此它可能会有所帮助,但您需要更新虚拟主机设置,在某些情况下它可能不是合适的解决方案。

答案 1 :(得分:0)

您是否尝试过查看Magento管理配置页面?转到System -> Configuration -> Web,然后将Configuration Scope更改为store2等效的网站。展开Unsecure部分,然后在基本URL字段中输入http://www.store2.com。如果您计划使用SSL并使用https://www.store2.com/,请对“安全”部分执行相同操作。

System->Configuration->Web section Magento Admin

另请注意,您不能再在Magento 1.6.x上使用{{base_url}}。