2010-11-04 55 views
3

我正在使用一些负载均衡的服务器,并且要求将我的所有管理任务都归入一台服务器。我们已经确定最好的方法是为管理员提供DNS条目。指向我们的主服务器。为Magento创建admin admin.magentostore.com管理员网址(不是/ admin)

我看到的问题是,所有的自定义管理网址都是magentostore.com/admin,而我需要admin.magentostore.com。

任何想法或任何人做过类似的事情?

谢谢!

回答

2

您需要编写一个.htaccess重写,用于查找传入域admin.magentostore.com并将其重写为index.php/admin。如果你检查Apache rewrite documentation,你会发现很多关于如何实现它的例子。这实际上并不是Magento的问题,原生.htaccess会将你排除在外。

HTH, JD

5

首先尝试在开发环境中为摆脱直播网站的问题!

这些可以通过以下步骤来完成,:

  1. 您需要定义基础URL只为管理店视图,然后在地址字符串输入/管理员,你将被重定向到基本URL的。为此,您需要在管理中将默认值的基本URL配置选项设置为http://admin.yourdomain.com,并且需要为每个网站指定其自己的基本URL(例如http://yourdomain.com)。它可以通过管理界面或config.xml文件完成。在第二种情况下,您需要从core_config_data表中删除这些路径中的所有记录:web/secure/base_urlweb/unsecure/base_url

    <config> 
        <default> 
         <admin> 
          <web> 
           <unsecure> <!-- defining HTTP url options for admin store --> 
            <base_url>http://admin.yourdomain.com/</base_url> 
           </unsecure> 
           <secure> <!-- defining HTTPS url options for admin store --> 
            <base_url>https://admin.yourdomain.com/</base_url> 
           </secure> 
          </web> 
         </admin> 
        </default> 
        <websites> 
         <website_code1> 
          <web> 
           <unsecure> <!-- defining HTTP url options for admin store --> 
            <base_url>http://yourdomain1.com/</base_url> 
           </unsecure> 
           <secure> <!-- defining HTTPS url options for admin store --> 
            <base_url>https://yourdomain1.com/</base_url> 
           </secure> 
          </web> 
         </website_code1> 
         <website_code2> 
          <web> 
           <unsecure> <!-- defining HTTP url options for admin store --> 
            <base_url>http://yourdomain1.com/</base_url> 
           </unsecure> 
           <secure> <!-- defining HTTPS url options for admin store --> 
            <base_url>https://yourdomain1.com/</base_url> 
           </secure> 
          </web> 
         </website_code2> 
        </websites> 
    </config> 
    
  2. 用于自动施加管理店来看,你需要创建的Magento将设置存储代码为它运行到管理,并创建重定向到/管理/请求路径的.htaccess的规则,如果它不是定义。您需要定义这样的规则,以使其能够:

    SetEnvIf Host ^admin\.yourdomain\.com$ MAGE_RUN_CODE=admin 
    RewriteEngine On 
    RewriteCond %{HTTP:HOST} ^admin\.yourdomain\.com$ 
    RewriteCond %{REQUEST_URI} !/admin/ 
    RewriteRule .* %{REQUEST_URI}index.php/admin/ [R=302,L] 
    
0

进入菜单系统>配置>管理员>管理基本URL。在那里你可以输入并启用http://admin.magentostore.com/。您仍然需要按照Ivan的建议设置MAGE_RUN_CODE,以防止它被用作普通商店。

作为一个额外的调整,你可以使用我的(无耻地插入)admin rewrite extension来整理网址。我一直在努力通过禁止管理员访问非管理域来扩展安全性,但遗憾的是它尚未准备好发布,请观看此空间...

+0

不错。看起来像那个模块,Firebug Lite将不得不进入我的自动安装脚本! (参考http://stackoverflow.com/questions/3740858/automatic-installation-of-common-magento-extensions-at-project-kickoff) – 2010-11-04 22:23:48