【问题标题】:Magento redirecting to old URL after duplicating site复制站点后 Magento 重定向到旧 URL
【发布时间】:2012-07-09 22:46:39
【问题描述】:

我正在为 Magento 多商店安装而苦苦挣扎。旧的设置是一个 Magento 安装,两个站点/商店都指向同一个文件夹。现在客户想要 2 个独立的网站,因此对一个的更改不会弄乱另一个。

无论如何,数据库被复制,文件被复制,var/cache、var/session、var/tmp 被清空。我已经更改了 app/etc/local.xml 中的数据库参数,.htaccess 文件没有任何硬编码规则。

问题是 sitea.com 不断重定向到 siteb.com 并且管理区域无法正常工作,所以我必须在控制台或 phpMyAdmin 中执行所有操作。

我必须在哪些数据库表中进行更改?我错过了什么?

【问题讨论】:

    标签: magento redirect


    【解决方案1】:

    core_config_data 中的 base_url 起到了作用,结合删除 var/cache、var/session、var/tmp 和系统 /tmp 文件夹中的所有内容

    【讨论】:

    • 实际上,删除这些文件夹的内容并不是真正需要/必要的,因为它们与路由和请求处理无关。假设它更像是安慰剂或其他东西。
    • 配置文件缓存时需要
    • 请不要创建一个新的答案来说别人的答案是正确的。相反,请投票并标记正确答案。
    【解决方案2】:

    在 sitea.com 上,您可能想查看其数据库和基本 URL 的 core_config_data 表。或者,您可以尝试执行以下查询:

    UPDATE `core_config_data` SET `value`='http://sitea.com/' WHERE `value` LIKE 'http://%' LIMIT 2;
    

    在 siteb.com 的数据库上做同样的事情

    UPDATE `core_config_data` SET `value`='http://siteb.com/' WHERE `value` LIKE 'http://%' LIMIT 2;
    

    【讨论】:

    • @seth-jeremy-malaki 谢谢!在 core_config_data 表中,我将 web/unsecure/base_url 和 web/secure/base_url 更改为 sitea.com,现在重定向消失了,但所有指向 .js 文件的链接都已损坏,如下所示:sitea.com/home/sitea/public_html/js/prototype/prototype.js。关于这个有什么想法吗?
    • 我更改了 media/js 文件夹的权限,现在可以了!
    • 您还必须确保在 URL 中包含尾随 /。没有它就不行。
    • 还要确保您的权限不要太多(例如 777)。使其足以让 Web 服务器对其进行读写访问。
    【解决方案3】:

    在 Magento 后端更新配置以传输生产网站时,请谨慎编辑配置面板中的基本 URL 信息。一旦这些值发生变化,该站点将无法再访问。

    我们更喜欢转移站点,然后对 core_config_data 表中的数据库进行这些更改。

    如果您被锁定在后端,请更新数据库,删除 var/cache 目录,看看是否就是您所需要的。

    【讨论】:

      【解决方案4】:

      我有同样的问题 试试我做的:

      第 1 步:

      使用 SSH 移动缓存:

      rm -rf /var/tmp/magento/*
      

      第 2 步:

      PS:为了使用 Magento Connect Manager,您可能需要重置 PEAR 配置设置。为此,只需删除文件downloader/pearlib/pear.ini,就会自动创建一个新文件。

      第 3 步:

      重置文件权限

      为确保所有 javascript 文件、CSS 和图像都能正确加载,您应该将文件权限重置为新服务器的推荐设置。

      从您的 Magento 根目录(例如 public_html)运行以下命令:

      find . -type d -exec chmod 755 {} \;
      find . -type f -exec chmod 644 {} \;
      

      【讨论】:

        【解决方案5】:

        我一遍又一遍地遇到这个问题。 我知道它与缓存无关,只是一个数据库问题,因为我可以在 env 中更改数据库名称,但它会中断。

        现在,我按照 Seth 之前的说明(查找和更改 DB 值)进行了部分操作。我不确定我是否完全使用了他的代码,但我需要更改 3 行:

        • web/unsecure/base_url
        • web/secure/base_url
        • web/unsecure/base_link_url

        更改 core_config_data 表中的这 3 个就可以了。

        【讨论】:

          猜你喜欢
          • 2017-02-22
          • 2019-08-02
          • 1970-01-01
          • 2017-07-25
          • 1970-01-01
          • 2017-08-10
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多