博客迁移手记

已经不知道第几次手残了。所以这次一定要好好记一下。

基础环境

WordPress 依赖 PHP,数据库是 MySQL,前面需要有一个 Nginx 或者 Apache 做代理。

所以第一步是配置这些环境。

PHP

之后我们还需要安装一些其他东西:

这样就差不多了。

MySQL

然后是比较漫长的设置。我们可以用自带的 mysql_secure_installation 来完成这个事儿。输入

然后照着提示加载密码强度验证器、输入 Root 密码(其实 root 密码并不会被更改掉)、移除 Test 用户和 Test 表。

之前,包括 Ubuntu16.04 和 Debian8 的时候,安装 MySQL/MariaDB 的过程中会提示输入 root 密码。但现 Debian9 和 Ubuntu18.04LTS 里面没有了这个步骤。安装好之后,root 是以 sudo mysql 这样的方式进行登录的,差不多可以理解为 SQLServer 的 Windows 用户认证。

这样做是很安全。但我们有时候想用图形界面登进去的话就傻了。所以我们试图改为默认输入密码的那种登录方式。

提示:这样做并不是很安全啊~~

我们使用

以 root 用户的身份进入 MySQL,然后使用

查看现在的权限情况:

我们会发现,root 用户使用了一个插件,而正是这个插件阻止了我们使用密码来登录。我们可以使用

来更改密码,并改为使用密码登录 root。这时候再用上面的咒语查看权限情况,可以发现 root 已经有密码了。以后我们就能愉快地使用

来登录了。

Nginx

这样就差不多了。

配置

上面安装完毕了,下面开始配置。

数据库

首先,用各种方式添加用户并新建表。个人习惯是临时用一下 phpMyAdmin 的建表语句来新建用户和表(因为自己不会写):

之后,我们可以使用

将备份的 SQL 文件导入数据库。

PHP

其实 PHP 不需要设置任何东西就能工作的。但是为了增强一点速度,我们还是稍微动一点点配置。

找到/etc/php/7.2/fpm/php.ini,找到 opcache 这一小节,改动如下设置:

保存重启 php-fpm 服务。

哦对了,这里注意看一下/etc/php/7.2/fpm/www.conf 里面的 listen = /run/php/php7.2-fpm.sock,后面会用到。

Nginx

/etc/nginx/nginx.conf 里面,把 gzip 相关东西都打开。

/etc/nginx/sites-available 里面,将默认的 default 复制一份。然后开始魔改:

大功告成。建立个软链接到 sites-enabled,然后重启 Nginx 服务即可。

SSL 配置

直接使用 Certbot 来配置 SSL 即可。

之后

照着向导一步一步走下去就好。

既然都开了 SSL 了,不开 HTTP2 是不是有点暴殄天物?回到 nginx 设置里面,会发现配置文件被 certbot 改掉了。我们需要改成

即可。

备份

哦,看之前的脚本不爽,又写了个脚本在跑

备份脚本 3.0 专治手残健忘。希望别再把所有备份全搞丢了。

结语

OK,不折腾了。好好做备份,好好做镜像,好好跑代码,好好写文章。

发表评论

电子邮件地址不会被公开。 必填项已用*标注