今天算是把博客迁移过来了。自从 Kosscloud 发布运营中止公告以来,这个博客如何迁移便是最大的问题了。
由于没有经验,加上是从 Ubuntu 迁移到 CentOS,因此过程中遇到了挺多麻烦事。不过好在本身的迁移是相当简单的,因此最后也算是完美迁移成功了。这篇文章也算是记录一下成果吧(
ToC
准备迁移
我们需要准备的内容是 wordpress
目录和数据库。目录我们通过 tar
打包:
而数据库,我们则通过 mysqldump
导出:
就此,第一步就算是完成了。
数据转移
这一步是两台服务器之间的操作,把数据拖到新服务器上就行了。具体怎么拖随你便(
安装与简单配置
caddy
我们依然是以 caddy
作为服务器(因为有上台服务器的现成配置可以抄)。首先是安装:
然后是用户,我们给 caddy
单独分配一个用户和用户组:
然后,我们配置 service
:
写入如下内容:
最后启动:
在启动过程中可能遇到如下的问题:
226/NAMESPACE
需要自行新建 /etc/ssl/caddy
目录,并将其 chown
给 caddy
用户。
203/EXEC
可能是 SELinux
原因。
php
新系统中我们想要安装 php-7.4
,但 CentOS 8
默认只给到 php-7.2
(怎么和 1804 一样),因此我们需要自己动手(
至此,php
算是装好了,但配置还不大行。我们需要让 caddy
用户组的成员能够使用 php-fpm
,因此我们需要去修改 php-fpm
:
找到 listen.acl_users
,它应该是长这个样子的:
在后面加上 caddy 就可以了:
最后启动:
mariadb
首先是正常安装 mariadb
:
然后,我们需要配置数据库和用户。这里需要注意的是,我们需要和被迁移站的设置完全一致:
然后输入以下内容(需要修改):
就此,mariadb
的配置就完成了。
数据恢复
站点数据
首先是站点数据,我们将 wordpress.tar.gz
解压:
记住这个路径,之后会用到。
数据库
导入数据只要通过 source
就可以了:
站点上线
Caddy
首先是要配置 Caddy。我们写入 Caddyfile:
然后重载 caddy
:
修改解析
我们需要修改解析为迁移后的 IP。不过我这里是用的 Cloudflare CNAME 接入(见之前文章),因此我只需要修改 CF 方面的 IP 就行了,对外的 DNS 解析是不变的。
配置防火墙
众所周知,CentOS
使用的是 firewalld
,我们也需要这样一个防火墙来保护服务器的安全。配置的步骤很简单,如下所示:
至此,全站迁移完成。