Magento is one of the fastest growing eCommerce platforms on the internet and with its recent acquisition by eBay it promises to stay on the lead and keep growing with even faster pace than before.  It’s been choice for a platform for many of my clients and recently I had to do some development work on one of the websites. The shop was running Magento 1.7 and was on a dedicated CentOS server.

Move Magento to different domain/subdomain

I had to copy the live site in a development environment do the changed and move back to the live instance. The structure was as follows:

1
2
3
4
5
Live instance: domain.com
Path: /var/www/vhosts/live

Dev Instance: dev.domain.com
Path: /var/www/vhosts/dev

so to start first I moved across all of the files from live to dev:

1
# cp -r /var/www/vhosts/live/* /var/www/vhosts/dev

Next step was creating database for the development instance. First create your database in MySQL

1
CREATE DATABASE magento_dev;

Then you can copy the live one to the dev with one simple command:

1
# mysqldump -umagento -p magento_live > mysql -umagento -p magento_dev

OK so far so good we have the code base and the database ready next step would be changing the configurations of the development build so it uses the correct database connection. This step is very important and you should make sure that you dev build is not connected to your live database because this will mess the things up really bad.

The configuration file in our dev build is under:/var/www/vhosts/dev/app/etc/local.xml there you have to edit the following lines:

1
2
3
4
<host><![CDATA[HOSTNAME]]></host>
<username><![CDATA[USER]]></username>
<password><![CDATA[PASSWORD]]></password>
<dbname><![CDATA[DATABASENAME]]></dbname>

And those should have values according to your database and user in our case that was:

1
2
3
4
<host><![CDATA[localhost]]></host>
<username><![CDATA[magento]]></username>
<password><![CDATA[OuRSTR0NgP455W0RD]]></password>
<dbname><![CDATA[magento_dev]]></dbname>

Once the database connection is established you have to change the base URL of the shop. There are two specific rows that needs to be updated and they should be in your config table: core_config_data

1
2
UPDATE core_config_data SET VALUE = "http://dev.domain.com" WHERE path = "web/unsecure/base_url";
UPDATE core_config_data SET VALUE = "http://dev.domain.com" WHERE path = "web/secure/base_url";

In our case the secure and insecure URLs are both the same but if you have HTTPS already set for the new domain you can change the second query to match your existing URL. We are almost done but most likely our shop still wont work and the reason for that is the Magento magical cache. You have to delete all file and session cache.

1
2
# rm -fr /var/www/vhosts/dev/var/cache/*
# rm -fr /var/www/vhosts/dev/var/session/*

So that is all you can now start using you new shop. If you have problems logging in to Magento back-end because you don’t know the admin password you can restart Magento admin password.

Move Magento to another host

This is almost the same process but you need to compress the files and move them across to the other server.

First we have to export our database:

1
2
# cd /var/www/vhosts/live
# mysqldump -umagento -p magento_live &gt; magento_live.sql

After that move to the root folder that contains all of the live build files and archive it with tar ball

1
# tar -zcvf magento_live_bck.tar.gz /var/www/vhosts/live/*

This archive should contain all of the Magento files and the database dump. Next step is copying the archive across to the other server:

1
2
3
4
# scp /var/www/vhosts/magento_live_bck.tar.gz root@other.server.com:/var/www/vhosts/live
# root@other.server.com
# cd /var/www/vhosts/live
# tar -zxvf magento_live_bck.tar.gz

Once you have moved the files across all you have to do is import the database and do the steps mentioned above for the domain move.

Other issues with Magento blank screen

If you get blank screen check your php error log and enable your error printing by putting this into index.php

1
2
// index.php
error_report(1);

Here is a solution of error that I go: Broken local XML

1
Call to a member function extend() on a non-object in httpdocs/lib/Varien/Simplexml/Config.php on line 600

Other than that you should make sure you have all needed PHP extensions installed on the server for example mbcrypt.

And last but not least is to check your .htaccess file and if needed update theRewriteBase tag to point to your root directory on your server.

How to Move Magento to a New Server or Domain的更多相关文章

  1. Importing Product Images on Magento

    Multiple product images of each type can be imported into Magento, and associated with a specific pr ...

  2. The Windows account sa does not exist and cannot be provisioned as a SQL Server system administrator

    今天遇到一个案例,在使用命令修改一个测试服务器(SQL Server 2014标准版)的服务器排序规则时,遇到了下面错误信息 (具体账号信息脱敏处理,随机生成一个账号密码) The Windows a ...

  3. [转]How to speed up Magento 2. Maximum Performance

    本文转自:https://magedirect.co/how-to-speed-up-magento-2-maximum-performance/ Introduction In this artic ...

  4. SQL Server 2012 无人值守安装(加入新实例)

    方法1,通过指定条个參数安装 setup.exe /Q /IACCEPTSQLSERVERLICENSETERMS /ACTION=install /PID=<validpid> /FEA ...

  5. Microsoft SQL Server Version List [sqlserver 7.0-------sql server 2016]

    http://sqlserverbuilds.blogspot.jp/   What version of SQL Server do I have? This unofficial build ch ...

  6. Microsoft SQL Server Version List(SQL Server 版本)

    原帖地址 What version of SQL Server do I have? This unofficial build chart lists all of the known Servic ...

  7. SQL Server 2012 无人值守安装

    方法1,通过指定条个參数安装   setup.exe /Q /IACCEPTSQLSERVERLICENSETERMS /ACTION=install /PID=<validpid> /F ...

  8. Problem with WinRM on Exchange 2013 Management Shell and Exchange Toolbox on a new exchange 2013 with CAFE and BE on single server installation

    While deploying MS Exchange 2013 I experienced issues with accessing the Exchange Management Shell a ...

  9. 利用Ring Buffer在SQL Server 2008中进行连接故障排除

    原文:利用Ring Buffer在SQL Server 2008中进行连接故障排除 出自:http://blogs.msdn.com/b/apgcdsd/archive/2011/11/21/ring ...

随机推荐

  1. POJ 1064 (二分)

    题目链接: http://poj.org/problem?id=1064 题目大意:一堆棍子可以截取,问要求最后给出K根等长棍子,求每根棍子的最大长度.保留2位小数.如果小于0.01,则输出0.00 ...

  2. 苹果应用商店DNS修改加快下载速度

    具体方法:依次点击进入[设置]→[无线局域网]→[WiFi网络右侧小i图标]→更改DNS地址,可以按照自身需求选择以下某个DNS进行更换. OpenDNS:208.67.222.222和208.67. ...

  3. get和post方法的区别

    在form表单提交数据的过程中,method属性提供了两个值:get,post,默认为get方式[参1] 即一种为get提交,一种是post提交.那么这两种提交方式有什么不同呢? 查询了一些资料后,总 ...

  4. Android环境搭建要点

    1.JDK环境变量配置 在环境变量的path变量中加入jdk安装目录的bin路径字符串(C:\Program Files\Java\jdk1.8.0\bin). 配置好后,在命令提示符界面输入&quo ...

  5. SpringMVC、Struts1、Struts2和SSH2框架中单例与多例的解析

    struts1是单例提供服务,请求数据绑定在actionform里,form当做参数传入调用方法,不用实例变量就不会出现并发问题. spring mvc的contrller也是这样的模式 struts ...

  6. Java/Js下使用正则表达式匹配嵌套Html标签

    转自:http://www.jb51.net/article/24422.htm 以前写过一篇文章讲解如何使用正则表达式完美解决Html嵌套标签的匹配问题(使用正则表达式匹配嵌套Html标签),但是里 ...

  7. mysql安装后的配置

    mysql的安装其实就是一步一步按提示就可以: 1.开始安装 2.选择mysql安装位置 3.选择数据库存放位置,最好和mysql安装在一起,好查找 4.选择详细设置 5.选开发者机器 6.选多功能型 ...

  8. Pointcut is not well-formed: expecting 'identifier' at character position 0

    异常如下: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'userDa ...

  9. win8 iis 安装

    win8下面安装iis跟win7一样,需要通过启用和关闭windouws功能来安装iis,具体要选哪些项,请看图: 如果要使用wcf服务,你还需要勾选以下项:

  10. 【新产品发布】【iM_TFTRGB 液晶驱动模块】

    ============================== 技术论坛:http://www.eeschool.org 博客地址:http://xiaomagee.cnblogs.com 官方网店:h ...