0%

Nginx配置https

  1. 准备
  2. Nginx配置

准备

ssl证书:前往“阿里云-ssl控制台”,购买证书,每个账户每年有20个免费额度

image-20230225180319822

若没有额度,点击左侧 立即购买,购买后点击右侧 创建证书,之后填写网站域名(只能是单域名),等待审核。

审核过后得到证书文件,后缀名分别为.pem和.key。

Nginx配置

该部分配置位于http {}模块中

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
# static web server
server {
charset utf-8;

listen 80;
listen 443 ssl;
server_name 服务器名1 服务器名2;

# HTTPS settings
ssl_certificate /path/to/pem/file;
ssl_certificate_key /path/to/key/file;
ssl_session_timeout 5m; # 缓存有效期
ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4; #加密算法
ssl_protocols TLSv1 TLSv1.1 TLSv1.2; #安全链接可选的加密协议
ssl_prefer_server_ciphers on; #使用服务器端的首选算法

# Redirect HTTP to HTTPS
if ($scheme != "https") {
return 301 https://$server_name$request_uri;
}

# Server settings for both HTTP and HTTPS
root /path/to/static/web/page/;
index index.html index.htm;

location / {
add_header Cache-Control no-cache; # 避免html缓存
try_files $uri $uri/ /index.html;
}
}