自留地
切勿乱来!
     找回密码

Let’s Encrypt 证书在苹果iOS系统Safari上请求COSP太慢的原因和解决方法

#Linux专题

起因

最近优化移动站,发现在手机上打开巨慢,第一反应是服务器的问题,查了没问题,接着查后端,数据库,甚至是模板,都没有结果,后来排除了前几样之后,建个空白文件访问都巨慢。一时摸不着头脑!

定位问题

然后实在没有思路了,就抓包一下访问请求,发现是HTTPS的问题,请求一个ocsp.int-x3.letsencrypt.org会非常的慢,然后就是超时,服务器上ping也是超时,问题基本上就差不多定位到这个上了。

这个问题的产生是因为这个域名使用了CDN,CDN解析的CNAME节点被污染了,造成国内无法请求到(原因就不多说了,谣传是某数字公司造成的)。

OCSP是干嘛的

这玩意干嘛的其实自行百度一下就知道了,我只粗略的说一下,这个是域名证书的有效期检查和状态检查,比如到期了,或者证书吊销了,这个在IE下只请求2s后就抛弃,Chrome压根不请求这玩意,Safari比较另类,持续性请求。

解决问题

这个问题解决起来搜遍了全网,无非就两个解决方案

第一个,服务器内hosts一个可请求到ocsp.int-x3.letsencrypt.org这个域名的IP,但这个域名采用的是CDN,怕是CDN分配的IP存活期也不会太长,经常换也是麻烦

第二个方案也就是我正在使用也推荐的方案,使用谷歌DNS来进行请求,方案如下:

以NGINX为例,在站点配置文件证书配置的部分里,增加:

ssl_stapling on;
ssl_stapling_verify on;
resolver 8.8.8.8 valid=60s;
resolver_timeout 2s;

四者缺一不可,然后重启nginx

接着再执行

openssl s_client -connect yourdomain.com:443 -servername yourdomain.com -status -tlsextdebug < /dev/null 2>&1 | grep -i "OCSP response"

进行检查是否生效

生效会提示:

OCSP response: 
OCSP Response Data:
    OCSP Response Status: successful (0x0)
    Response Type: Basic OCSP Response

失败会提示:

OCSP response: no response sent

这样就解决了COSP引起的在苹果手机里访问太慢的问题了

6 收藏 打赏
×
版权声明:本文采用知识共享 署名4.0国际许可协议 [BY-NC-SA] 进行授权
文章名称:《Let’s Encrypt 证书在苹果iOS系统Safari上请求COSP太慢的原因和解决方法》
文章链接:https://www.ediok.cn/blog/2020/08/4800.html
本站资源仅供个人学习交流,请于下载后24小时内删除,不允许用于商业用途,否则法律问题自行承担。
分享到

评论 抢沙发

评论前必须登录!

 

关注互联网发展前沿,关注PHPCMS技术演进,钻研PHPCMS技术开发

问答社区 联系我们

登录

登录即表示同意本站用户协议隐私政策
©2026 周涛博客 All rights reserved

注册

注册即表示同意本站用户协议隐私政策
©2026 周涛博客 All rights reserved

觉得文章有用就打赏一下文章作者

非常感谢你的打赏,我们将继续给力更多优质内容,让我们一起创建更加美好的网络世界!

微信扫一扫

微信扫一扫