随笔 - 37,  文章 - 0,  评论 - 12,  阅读 - 10万

client prematurely closed connection

这个异常,请求返回状态是500,nginx中的status是400。

问题描述:

项目里面一个分享接口。

使用公司内网访问ios、安卓、浏览器都可以访问通。

如果使用互联网访问,安卓、浏览器可以访问通,但ios不行,但其他接口ios访问都没有问题。

问题出现之后,感觉有点诡异。之前没有遇到这种情况,所以一点一点的排查分析。

访问端:排除ios手机的问题,因为如果是手机问题,接口都应该不能访问。

服务端:查看日志,请求只到了nginx反代服务器,没有分发到后面的应用服务器(日志没打印),于是可以排除是项目代码的问题。

问题就是出现在请求到nginx之间(access.log日志打印,status为400)。

按照度娘上nginx出现400的原因,分析一遍之后,发现并没有解决问题。

至此,我想到极大可能是网略方面出现了问题。

于是找网略组同事开始抓包分析,最终找了原因,是因为WAF拦截了一个合作商的域名导致的。放开之后,接口正常访问了。

这次的问题,是安全方面给拦截出现的,并不是程序本身问题。

如果有相同困惑的伙伴,可以看看是否是网路安全策略的问题。

posted on   之之小侠  阅读(491)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· Vue3状态管理终极指南:Pinia保姆级教程

< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5
点击右上角即可分享
微信分享提示