因为反向代理halo博客的时候使用了Nginx,所以干脆把去年的web基础的课程设计放上来。

我这边为了省事,直接用的二级域名,记得在服务商那里解析对应的域名。

准备工作

Nginx的根目录:/etc/nginx

在根目录下新建一个名为htmls的文件夹,在里面创建myblog的文件夹,用于存放网页文件,用Xftp把文件传输过去。

cd /etc/nginx
mkdir htmls
cd htmls
mkdir myblog

Nginx的配置文件,是可以读取了conf.d文件夹里面的。因为怕写的时候把原有配置搞乱了,所以我在conf.d文件夹,新建了一个myblog.conf文件

cd /etc/nginx/conf.d
vim myblog.conf

配置文件:

server {
    listen 80;
    server_name myblog.solitaryorz.com;
    
    location / {
        root htmls/myblog/;
        index index.html;
    }

    location /login {
        alias htmls/myblog/;
        index login.html;
}

配置SSL证书

用certbot nginx插件申请SSL证书

# 安装 certbot 以及 certbot nginx 插件
sudo yum install certbot python2-certbot-nginx -y

# 执行配置,中途会询问你的邮箱,如实填写即可,此处大概率会出现问题,看下面的解决方案
sudo certbot --nginx

# 自动续约
sudo certbot renew --dry-run

# 重启nginx
service nginx restart

执行配置那一步可能会出问题,报错如下

ImportError: cannot import name UnrewindableBodyError

解决方案

# 删除库
sudo pip uninstall requests
sudo pip uninstall urllib3
sudo yum remove python-urllib3
sudo yum remove python-requests

# 确认一下是否已经删除
rpm -qa | grep requests 
pip freeze | grep requests

# 重新安装
sudo yum install python-urllib3
sudo yum install python-requests

Q.E.D.


我还有很多想要完成的梦想。