网站搬迁技术之博客迁移

系统环境是centos7.4.1708  nginx1.12.2  mariadb5.5.56  php5.4.16  

(1)源服务器的操作:

1.1 首先把旧服务器的网站打包,

进入nginx的根目录
cd /usr/share/nginx/htm
tar -czvf viaucc-$(date +%F).tar.gz  ./*

打包好之后用scp把它传到新服务器的root用户家目录

1.2 接着把数据库导出来,

mysqldump -u root -p wordpress > wp$(date +%F).sql

1.3 最后导出nginx/apache的配置文件。

这一步直接用wincp等软件下载下来

(2)目标服务器的操作:

在另外一台服务器也安装相同的LNMP环境,最后把备份出来的文件上传到新的服务器进行替换。

2.1安装和源服务器一样的WEB环境

老的博客部署在腾讯云的宝塔面板下面,因此安装LNMP没有费一点力气,但是新的服务器我想自己动手,所以环境就是手动yum安装的。首先安装nginx ,centos7默认是没有nginx的软件包的,需要先安装epel的源。

yum install epel-release -y

(安装epel源)

yum install nginx -y

安装nginx)

nginx

(开启nginx)

systemctl enable nginx

(开机启动)

yum install php php-fpm -y

(安装php)

yum install -y  php-devel php-mysql php-common php-devel php-gd libjpeg* php-imap php-ldap php-odbc php-pear php-xml php-xmlrpc php-mbstring php-mcrypt php-bcmath php-mhash libmcrypt libmcrypt-devel

(安装php扩展)

systemctl start php-fpm

(开启)

systemctl enable php-fpm

(开机启动)

yum groupinstall mariadb mariadb-client

(安装mariadb数据库)

systemctl status mariadb

(开启数据库)

systemctl enable mariadb

(开机启动)

mysql_secure_installation

(配置数据库密码)

firewall-cmd --permanent --add-port=80/tcp

(开防火墙的80端口)

firewall-cmd --reload

(重启)

vim /etc/nginx/nginx.conf

(编辑配置文件开启php支持)

在http模块下 root         /usr/share/nginx/html;  这行下面添加配置:  


index  index.html index.htm index.php;
       location ~ \.php$ {
        fastcgi_pass   127.0.0.1:9000;
        fastcgi_index  index.php;
        fastcgi_param  SCRIPT_FILENAME  /$document_root$fastcgi_script_name;
       include        fastcgi_params;
        }


vi /usr/share/nginx/html/info.php (创建php测试文件)

<?php    
phpinfo();    
?>


到此为止LNMP环境就装好了

2.2 恢复文件

将源服务器打包的网站,导出的数据库,nginx的配置文件这三个文件上传到新的服务器,由于新的服务器部署了和老的服务器一模一样的LNMP环境,因此只需把这个网站重新部署一下就可以了。

scp -P12345 alex.tar.gz root@111.222.333.4:/root
这里的-P是端口的意思,因为我的服务器ssh连接修改了端口
接着导出数据库
mysqldump -uroot -p123 alexpeng_cc > alex.sql
上传数据库到新的服务器
scp -P12345 alex.sql root@111.222.333.4:/root
把nginx的配置文件也导过去以节省步骤
cd /etc/nginx
scp -P12345 nginx.conf root@111.222.333.4:/root
好了 接下来来到新服务器进行操作
第一步先把网站还原到nginx的web根目录下
rm -rf /usr/share/nginx/html/*
cp alex.tar.gz /usr/share/nginx/html/
cd /usr/share/nginx/html/
tar -xvf alex.tar.gz
第二部操作数据库
接着修改下新服务器的数据库的密码和老服务器的密码一样,因为老服务器的网站的配置文件是写的这个密码,不改的话会出错,最好安装mariadb的时候就用老服务器的密码可以省略这一步
mysqladmin -uroot -p123456 password "123"
登录
mysql -uroot -p
create database alexpeng_cc;
use alexpeng_cc;
source alex.sql;
注意使用source命令的时候必须要进入到你导入的那个数据库文件的所在目录,否则是source不了的,当然是进入数据之前就要cd到该目录下面
第三部把nginx的配置文件换成原来服务器上的那个
mv /etc/nginx/nginx.conf /etc/nginx/nginx.conf.bak
cp nginx.conf /etc/nginx/nginx.conf
检查nginx的配置文件有没有报错
nginx -t
提示成功就重启nginx
nginx -s reload
systemctl restart php-fpm
接下来输入新服务的IP地址,就可以看到原来的网站了,至此Zblog网站迁移成功!


最后编辑于:2018/06/25作者: admin

发表评论