Magento多店铺设置网址

时间:2012-03-24 19:25:00

标签: php magento magento-1.5 multilingual

对于magento中的多商店设置,我已经从configure-> manage store创建了一个网站名称,商店名称和商店视图名称,如

store: de
name: de
code: de
website:de

并且还更改了新创建的商店表单configure-> web部分的基本网址,最后我在umask(0)之后在index.php中添加了这些行;

if ($_SERVER['HTTP_HOST'] == "localhost/project_name/de" || $_SERVER['HTTP_HOST'] == "http://localhost/project_name/de"){
$_SERVER["MAGE_RUN_CODE"] = "de";
$_SERVER["MAGE_RUN_TYPE"] = "de";
}

但是当我要浏览网址http://localhost/project_name/de时 它显示404错误。

请给我一个解决方案

感谢

4 个答案:

答案 0 :(得分:1)

您是否将index.php复制到您创建的新目录中?修改后的代码应该是新的index.php。

此外,您应该更改index.php文件中的Mage.php路径。

$mageFilename = '/root/directory/app/Mage.php';

并且,您是否将环境变量放在/ de文件夹.htaccess文件中:

SetEnvIf Host .*sitename.* MAGE_RUN_CODE=de
SetEnvIf Host .*sitename.* MAGE_RUN_TYPE=de

PS:使用您的域名更改sitename

或者只是更改子目录index.php文件,如下所示:

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

Mage::run('de', 'de'); 

答案 1 :(得分:1)

$_SERVER['HTTP_HOST']变量只包含服务器的域名(即HTTP请求中Host头的内容),本例为localhost。如果要在子目录中设置不同的存储,请参阅this blog post以获取基于.htaccess的解决方案,以设置图像运行代码。

答案 2 :(得分:1)

只需在magento root中复制两个文件即可。并且你想要的地方(mysite.com)文件夹

该文件是.htaccess.sample和index.php.sample

将两个文件重命名为.htaccess和index.php

打开index.php并编辑。

$ mageFilename = MAGENTO_ROOT。 '/app/Mage.php';

    to

$ mageFilename ='/ root / teen / app / Matage.php';

编辑这两行

/ *商店或网站代码* / $ mageRunCode = isset($ _ SERVER ['MAGE_RUN_CODE'])? $ _SERVER ['MAGE_RUN_CODE']:'';

/ *运行商店或运行网站* / $ mageRunType = isset($ _ SERVER ['MAGE_RUN_TYPE'])? $ _SERVER ['MAGE_RUN_TYPE']:'store';

如果将$ mageRunType设置为'store' 你必须将$ mageRunCode设置为'商店代码'

提供更多详细信息
  

http://www.samdoit.com/news/magento-multi-store

答案 3 :(得分:0)

您可能需要设置系统>配置>网络>在URL中使用商店代码。上次我尝试这样做,它开箱即用,无需触摸index.php或.htaccess