之前一直放在阿里云的虚拟主机,最近想给博客弄个HTTPS,由于虚拟主机不支持配置SSL,所以只能选择搬到Linode的日本服务器,使用Centos 7 x64系统。

一、环境安装

1.Lnmp环境安装

我使用的是lnmp.org的一键安装脚本

1
2
3
yum install screen
screen -S lnmp
wget -c http://soft.vpser.net/lnmp/lnmp1.3.tar.gz && tar zxf lnmp1.3.tar.gz && cd lnmp1.3 && ./install.sh lnmp

2.配置虚拟主机系统

1
lnmp vhost add

按照提示安装
二、WordPress安装及问题解决

1.安装WordPress

1
2
3
cd /home/wwwroot
wget https://cn.wordpress.org/wordpress-4.7-zh_CN.tar.gz
tar xvzf wordpress-4.7-zh_CN.tar.gz

使用浏览器打开站点按照提示安装即可

2.问题解决

导入老站数据的时候需要安装个插件,然后就提示WordPress安装插件提示输入FTP账户信息,这个问题很好解决。(来源)

如果你使用的是独立服务器或VPS,WordPress的安装目录为

/home/wwwroot/wordpress
先修改网站所在目录权限

1
2
chmod -R 755 /home/wwwroot/wordpress
chown -R www /home/wwwroot/wordpress

如果你使用的是虚拟主机,可以在wp-config.php里加入下面代码

1
2
3
define("FS_METHOD", "direct");
define("FS_CHMOD_DIR", 0777);
define("FS_CHMOD_FILE", 0777);

OK,WP安装插件提示输入FTP账户信息已经解决了。

3.导入数据

在原站点WP后台使用工具-导出xml文件,再到新站点后台使用WordPress自带的工具-导入之前的xml文件,并勾“下载并导入文件附件”即可,只要你原站点还在正常运行的话,WordPress会自动从原站点下载附件。来源

三、配置SSL

1、安装 cerbot:

1
2
git clone https://github.com/letsencrypt/letsencrypt
cd letsencrypt

2、运行:

// 根据自己的需求调整代码
./certbot-auto certonly –standalone –email admin@iinin.cc -d iinin.cc -d www.iinin.cc -d other.iinin.cc
成功提示:

1
2
3
4
5
6
7
8
9
10
11
IMPORTANT NOTES:
- Congratulations! Your certificate and chain have been saved at
/etc/letsencrypt/live/example.com/fullchain.pem. Your cert will
expire on 2016-09-04. To obtain a new or tweaked version of this
certificate in the future, simply run certbot-auto again. To
non-interactively renew *all* of your certificates, run
"certbot-auto renew"
- If you like Certbot, please consider supporting our work by:

Donating to ISRG / Let's Encrypt: https://letsencrypt.org/donate
Donating to EFF: https://eff.org/donate-le

3、配置Nginx:

1
2
3
4
5
6
7
8
9
10
server
{
listen 443 ssl; /
server_name bigback.me; //这里是你的域名
index index.html index.htm index.php default.html default.htm default.php;
root /home/wwwroot/wordpress //网站目录
ssl_certificate /etc/letsencrypt/live/bigback.me/fullchain.pem; //前面生成的证书,改一下里面的域名就行,不建议更换路径
ssl_certificate_key /etc/letsencrypt/live/bigback.me/privkey.pem; //前面生成的密钥,改一下里面的域名就行,不建议更换路径
........
}

重启Nginx:

1
sudo service nginx restart

至此,搬家+配置SSL已经完成了~