运维 | Nginx配置SSL证书实现HTTPS+HTTP2
一.申请证书
以腾讯云为例,在云产品搜索ssl点进红框部分的SSL证书,点到我的证书再点击申请免费证书,需要输入已经备案的域名以及自己的邮箱。然后再去域名注册商以阿里云为例,将CNAME记录添加等待10分钟左右,CA服务商就会认证成功。并能下载证书。
二、Nginx配置SSL证书
通过ftp连接到服务器将证书上传放到与nginx.conf文件同级目录下。
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-QEHOTqAI-1652531952661)(https://b3logfile.com/file/2022/05/image-8ff26e39.png)]
在server块中设置好证书路径,配置好TSL证书的支持版本及加密方式,在监听的端口后加入http2关键字开启http2。然后nginx重启或者重新加载文件。
server {#监听ipv4的443端口并设置允许http2 listen 443 ssl http2;#监听ipv6的443端口并设置允许http2 listen [::]:443 ssl http2;#监听指定的域名 server_name www.hcworld.xyz; #填写绑定证书的域名#设置证书 ssl_certificate 1_www.hcworld.xyz_bundle.crt; ssl_certificate_key 2_www.hcworld.xyz.key; ssl_session_timeout 5m;#设置支持的TLS版本 ssl_protocols TLSv1.1 TLSv1.2 TLSv1.3; #按照这个套件配置 ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:HIGH:!aNULL:!MD5:!RC4:!DHE; ssl_prefer_server_ciphers on; location / { proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header REMOTE-HOST $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; root html; #站点目录 index index.html index.htm; proxy_pass http://www.hcworld.xyz; } }
三、结果
实现HTTPS以及HTTP2
四.博客
公众号:青山有录
Blog:张红尘的个人博客
开发者涨薪指南
48位大咖的思考法则、工作方式、逻辑体系