Magento测试安装重定向到生产


Magento test installation redirects to production

我在本地VM中有一个针对magento的测试环境。它是生产代码和数据库的副本。为了实现这一点,我做了以下操作:

  • 在mysql转储中,我将所有域的www.website.com替换为test.website.com
  • 我在虚拟机和本地机器上更改主机文件,以将流量引导到测试域的虚拟机
  • 在index.php中,有一个针对测试子域更新的不同存储代码的条件

这适用于旧备份。当我备份一个新的生产数据库并替换子域时,我可以恢复该数据库,这就可以了。当我更新代码时,就会出现问题。我打开test.website.com页面,在某个时刻,它给出了一个302代码,并重定向到生产网站www.website.com。

虚拟机是UbuntuDesktop,所以它有自己的浏览器,我可以更改主机文件以保持www流量在本地。然而,我更喜欢使用测试域。

我想知道如何找到重定向发生的位置。在某个时刻,它会调用mage::run,然后我就迷路了。我可以在哪里查找以及如何找到此重定向?

我的基本Magento 1.7.0.2站点副本:

  1. 通过sql复制数据库
  2. 在表"core_config_data"中,编辑web/secure/base_url和web/unseure/base_url
  3. 复制站点文件
  4. 在app/etc/local.xml <dbname><![CDATA[your_db_name]]></dbname>中编辑数据库值
  5. 清理缓存var/cache/*有时var/locks/*var/session/*
  6. 始终检查

在app/local/config.xml(或附近,对不起,我想已经有一段时间了)或admin->配置部分中有一个设置,您可以提供基本URL,检查这些设置是否仍设置为旧值

我也遇到了同样的问题。当然,你必须使用丹描述的步骤。但这对我没有帮助。我找到的解决方案是更改为apc(Alternative PHP Cache)设置(在/app/etc/local.xml中):

<cache>
    <backend>apc</backend>
    <prefix>other_prefix_then_production_</prefix>
</cache>

如果Dan描述的步骤都不起作用,请尝试删除/tmp/magento/var/cache/文件夹的内容并重新启动服务器。

rm -rf /tmp/magento/var/cache/*