0

我已经成功地为我的 Magento 商店设置了一个本地开发环境,并为 dev 和 prod 提供了单独的 /app/etc/local.xml 文件。我在本地 phpymadmin 中也有数据库的副本。

除此之外,我还设置了虚拟主机,这样当我访问http://store.dev时,它会在 localhost 中找到正确的文件夹并显示该站点。我知道它正确连接到数据库,因为如果我删除数据库或更改本地配置文件,magento 会抛出错误。

我的问题是每次我去 store.dev 我都会被重定向到http://store.com。我知道 core_config_data 中有两个 url 变量,我将这两个变量都更改为 store.dev ,但没有成功。我什至在 mysql 转储中进行了查找和替换,以将 .com 的所有实例替换为 .dev。

非常感谢任何帮助或建议

4

2 回答 2

1

问题出在数据库表core_config_data中。

要解决它,您必须在“路径”列中搜索值“web/unsecure/base_url”和“web/unsecure/base_url”。您必须使用新的 base_url更正它们,清除缓存(通过 bash 命令rm -rf var/cache),它应该可以工作!

于 2014-03-27T12:00:28.543 回答
1

您忘记刷新 Magento 缓存,可能是浏览器缓存。为避免浏览器重定向缓存 - 使用不同的缓存,或向 URL 添加随机 GET 参数。

只是一个想法,可能对你来说会很有趣,

从 core_config_data 中删除 URL。为每个环境创建单独的 local.xml 文件,将 node default/web/secure/base_url 和 node default/web/unsecure/base_url 设置为某个 URL(http://store.dev/用于 dev,http://store.com /用于生产)。它允许您在配置文件中分配 URL(而不是 core_config_data)。它将起作用,因为如果数据库中未指定值,magento 会在此节点中查找默认值。

但是有一个重要的通知,如果有人将在 web 选项卡中提交配置表单,它将写入数据库值,因此不会再应用 local.xml 中的更改。您可以从配置中删除 URL 字段,但是您将无法在 Web 界面中对其进行编辑。

于 2013-11-12T23:11:40.683 回答