将 PHP 5.2 上的 Magento 1.3/1.2 项目迁移到 5.3/5.5 平台而不更改主题,并保留所有现有产品和客户数据?

Migrate Magento 1.3/1.2 project(s) on PHP 5.2 to 5.3/5.5 platform(s) without changing theme, and keeping all existing product and customers data?

我的工作场所决定将所有项目迁移到新服务器。大多数项目基于 Magento 1.3 & 1.2,现有服务器是 PHP 5.2。新服务器将是 PHP 5.3。如何在不更改主题和数据的情况下将所有这些 Magento 项目迁移到新平台?

编辑:而且我已经将它们迁移到 PHP 5.5 版(另一个测试服务器)

现在我想在高速公路上开着古董老爷车。

开始项目文件和数据库迁移:

  1. 参考:https://www.siteground.com/tutorials/magento/magento_move.htm

哦,出错了:

  1. 错误:无法检索实体配置:core/store_group 参考:http://haizdesign.com/magento/magento-cant-retrieve-entity-config-solution/

    从 Magento Commerce 站点下载新的 Magento 副本并解压缩文件。 打开 Magento > lib > Varien 并复制 Simplexml 目录,然后浏览本地主机上的站点到相同位置,并通过粘贴和覆盖替换目录。 清除缓存 (lib/var/cache & lib/var/session)

按照参考重置管理员,或者您可以在数据库中更改管理员的电子邮件并通过管理面板恢复密码

  1. 使用密钥 4030bc23jd67d6cee96600aa40d0390:LR

    加密的管理员密码

    参考:http://www.atwix.com/magento/reset-admin-password-mysql/

  2. depricated函数解决方案:

参考:http://www.geekieblog.com/2011/03/magento-1-3-x-environment-won%E2%80%99t-run-on-php-5-3/

参考:What changes do I need to make Magento work with PHP 5.3?

    File: lib/Varien/Object.php, and do the following change: L: 484

    public function ___toString(array $arrAttributes = array(), $valueSeparator=’,’)
    >>>
    public function __invoke(array $arrAttributes = array(), $valueSeparator=’,’)

    File: app\code\core\Mage\Core\Controller\Request\Http.php and change: L:199
    $host = split(‘:’, $_SERVER['HTTP_HOST']);
    >>>
    $host = explode(‘:’, $_SERVER['HTTP_HOST']);

    File: app\code\core\Mage\Catalog\Model\Category\Attribute\Backend\Sortby.php and change: L:54, 88
    $object->setData($attributeCode, split(‘,’, $data));
    >>>
    $object->setData($attributeCode, explode(‘,’, $data));

    File: app\code\core\Mage\Admin\Model\User.php and change: L:360
    $nodePath = ‘adminhtml/menu/’ . join(‘/children/’, split(‘/’, $startupPage)) . ‘/action’;
    >>>
    $nodePath = ‘adminhtml/menu/’ . join(‘/children/’, explode(‘/’, $startupPage)) . ‘/action’;

    File: app\code\core\Mage\Catalog\Model\Layer\Filter\Price.php
    __toString >>> __invoke

    File: lib/Varien/Pear.php
    error_reporting(E_ALL & ~E_NOTICE);
    >>>
    error_reporting(E_ALL & ~E_NOTICE & ~E_DEPRECATED);

    File: downloader/Maged/Pear.php
    error_reporting(E_ALL & ~E_NOTICE);
    >>>
    error_reporting(E_ALL & ~E_NOTICE & ~E_DEPRECATED);

在 Magento V1.2 中:为了更正 return 错误的问题:'Can not add item to shopping cart' Function split() is deprecated in

File: \app\code\core\Mage\Catalog\Model\Product\Type\Abstract.php on line 478
$optionIds = split(',', $optionIds->getValue()); 
>>> 
$optionIds = explode(',', $optionIds->getValue());
And
foreach(split(',', $optionValue) as $value) { 
>>> 
foreach(explode(',', $optionValue) as $value) {
  1. 更正页面未找到错误 Magento site showing "not found" on clicking page link after migration the server

    Add .htaccess file with :
    RewriteEngine on 
    RewriteCond %{SCRIPT_FILENAME} !-f
    RewriteCond %{SCRIPT_FILENAME} !-d
    RewriteRule ^(.+)(?<!\.php)$ index.php/ [QSA,L]
    

您可以按原样使用主题。网站将按原样启动并 运行。 享受你的驾驶:-)