近日公司有一个项目上线,以H5的形式给客户使用,上线一段时间后有用户反馈说打开很慢,后来汇总了下,都是苹果手机的用户才慢。
去到Let's Encrypt官网wiki,看到已经有对应的解决方式了
Let's Encrypt 官网wiki
由于公司使用的是Nginx,直接开启即可
OCSP Stapling
在线证书状态协议(Online Certificate Status Protocol),简称 OCSP,是一个用于获取 X.509 数字证书撤销状态的网际协议,在 RFC 6960 中定义。OCSP 用于检验证书合法性,查询服务一般由证书所属 CA 提供。OCSP 查询的本质,是一次完整的 HTTP 请求加响应的过程,这中间涵括的 DNS 查询、建立 TCP 连接、Web 端工作等步骤,都将耗费更多时间,使得建立 TLS 花费更多时长。
解决方法便是OCSP Stapling
,经由 OCSP Stapling(OCSP 封套),Web 端将主动获取 OCSP 查询结果,并随证书一起发送给客户端,以此让客户端跳过自己去寻求验证的过程,提高 TLS 握手效率。
步骤一:修改hosts
官网给出了两个IP,23.44.51.8
和23.44.51.27
在服务器上ping
了一下,感觉23.44.51.27
快一点,就选择它了,vi
打开/etc/hosts
文件,添加以下内容
23.44.51.27 ocsp.int-x3.letsencrypt.org
步骤二:修改Nginx SSL 配置
配置示例:
ssl_stapling on; # 开启OCSP staplin
ssl_stapling_verify on; # 允许服务器检查 OCSP
ssl_certificate /etc/letsencrypt/live/xx.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/xx.com/privkey.pem;
ssl_trusted_certificate /etc/letsencrypt/live/xx.com/chain.pem; # 根证书链
ssl_session_cache shared:SSL:10m;
ssl_session_timeout 10m;
ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4:!DH:!DHE;
ssl_prefer_server_ciphers on;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
配置完成后,检测是否生效
网友评论