下载证书
可以在阿里云或者腾讯云申请免费的证书(腾讯云,阿里云),安装过程直接看所在云的操作指南即可,然后下载证书的压缩文件,里面有一个nginx文件夹,把 xxx.crt 和 xxx.key 文件拷贝到服务器目录,再配置下:
server {
# SSL 访问端口号为 443
listen 443 ssl http2 default_server;
# 填写绑定证书的域名 将dacongming.com换成自己的域名
server_name dacongming.com;
# 证书文件地址
ssl_certificate /etc/nginx/https/certificate.crt;
# 私钥文件地址
ssl_certificate_key /etc/nginx/https/certificate.key;
# 所有进程都可共享缓存,最多可存储10M
ssl_session_cache shared:SSL:10m;
# session过期时间
ssl_session_timeout 10m;
# 浏览器已支持TLSv1.3,建议加上
# TLSv1和TLSv1.1即将废弃,如果不需要支持IE和XP建议去掉
ssl_protocols TLSv1.1 TLSv1.2 TLSv1.3;
# on由服务器决定加密算法,off 由浏览器决定
ssl_prefer_server_ciphers on;
# 使用此套接字加密,推荐配置
ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4:!DH:!DHE;
location / {
root /usr/local/etc/nginx/html/dazhihui;
index index.html index.htm;
}
}
重定向
当用 http:// 访问,仍旧显示连接不安全,我们需要修改配置,当访问 http 时会重定向到 https 如下
server {
listen 80;
server_name dacongming.com;
# 单域名重定向
if ($host = 'dacongming.com'){
return 301 https://www.dacongming.com$request_uri;
}
# 全局非 https 协议时重定向
if ($scheme != 'https') {
return 301 https://$host$request_uri;
}
# 或者全部重定向
return 301 https://$host$request_uri;
# 以上配置选择自己需要的即可,不用全部加
}