1.安装certbot
sudo apt install certbot python3-certbot-nginx -y
2.确认域名已经正常解析
ping your-domain.com
3.为域名生成ssl证书
sudo certbot --nginx -d your.domain.com
Certbot 会提示你完成以下操作:
1. 输入邮箱地址,用于接收证书过期提醒。
2. 同意 Let’s Encrypt 服务条款。
3. 选择是否强制将 HTTP 流量重定向到 HTTPS(建议选择 2 强制重定向)。
4.生成的证书

5.配置nginx
server {
listen 443 ssl;
listen [::]:443 ssl;
server_name your.domain.com;
ssl_certificate /etc/letsencrypt/live/your.domain.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/your.domain.com/privkey.pem;
ssl_protocols TLSv1.2 TLSv1.3;
ssl_ciphers HIGH:!aNULL:!MD5;
location / {
root /usr/share/nginx/html;
index index.html index.htm;
}
# 配置后端反向代理
location /api/ {
client_max_body_size 10m; #允许10M大小的消息体通过
add_header Access-Control-Allow-Origin *;
add_header Access-Control-Allow-Methods 'GET, POST, OPTIONS';
add_header Access-Control-Allow-Headers 'DNT,X-Mx-ReqToken,Keep-Alive,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type,Authorization';
if ($request_method = 'OPTIONS') {
return 204;
}
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_pass http://127.0.0.1:8080/;
}
}
1014

被折叠的 条评论
为什么被折叠?



