添加访问规则

在云服务器的安全组中的入方向添加访问规则,端口范围为:443/443,Nginx配置SSL证书需要监听这个端口

下载证书

下载Nginx类型的SSL证书

解压证书

解压后有两个文件,文件后缀名分别为:.pem.key

上传证书

在Linux服务器的/etc/nginx/conf.d下创建cert目录,上传证书到刚刚创建的cert目录,记住文件路径

安装证书

在/etc/nginx/conf.d的default.conf配置文件添加以下代码:(upstream为反向代理的端口号,第一个server为反向代理配置,第二个server为SSl证书配置)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
upstream blog {
server localhost:8080;
}
server {

listen 80;
server_name www.zoutl.cn;

#charset koi8-r;
#access_log logs/host.access.log main;

location / {
proxy_pass http://blog;
proxy_connect_timeout 30; #连接超时 默认为60秒
proxy_read_timeout 30; #读取超时 默认为60秒
proxy_send_timeout 30; #发送超时 默认为60秒
access_log off;
break;
}

#error_page 404 /404.html;
# redirect server error pages to the static page /50x.html
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}
}
server {
listen 443 ssl;
server_name www.zoutl.cn;

ssl_certificate /etc/nginx/conf.d/cert/5564023_www.zoutl.cn.pem; #需要将cert-file-name.pem替换成已上传的证书文件的名称。
ssl_certificate_key /etc/nginx/conf.d/cert/5564023_www.zoutl.cn.key; #需要将cert-file-name.key替换成已上传的证书私钥文件的名称。
ssl_session_timeout 5m;
ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4;
#表示使用的加密套件的类型。
ssl_protocols TLSv1.1 TLSv1.2 TLSv1.3; #表示使用的TLS协议的类型。
ssl_prefer_server_ciphers on;

#charset koi8-r;
#access_log logs/host.access.log main;

location / {
proxy_pass http://www.zoutl.cn;
}

#error_page 404 /404.html;
# redirect server error pages to the static page /50x.html
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}
}

验证证书

在域名前加上https://,然后在浏览器地址栏输入即可

强制跳转https

在反向代理配置中加上以下代码:(在server_name下添加即可)

1
rewrite ^(.*)$ https://$host$1; #将所有HTTP请求通过rewrite指令重定向到HTTPS。