记一次post发送失败的排查历程

博客讲述了在遇到POST请求在生产环境中失败的问题时,如何通过检查tomcat和nginx日志进行排查。首先确认tomcat没有异常,然后检查post大小未超过限制,接着发现nginx配置没有问题,但error.log显示mkdir失败,原因是client_body_tmp缓存目录不存在,手动创建后问题解决。此过程记录下来,供遇到类似问题的人参考。
摘要由CSDN通过智能技术生成

前几天遇到一个问题,同一个请求测试环境可以,生产不好用,报错如下:在这里插入图片描述
由于这边是请求发送到nginx再到tomcat,所以先看看tomcat日志,是不是后台发生了未知异常给终止了。
经过排查发现tomcat根本没有相关日志,说明请求没有进入,所以排除后台的问题。
接下来就想,是不是post太大,超出了tomcat设置的上限?
于是拿出上图里的header和body,分别是1K和405K,确实不小。再看tomcat配置,发现里maxPostSize没有配置,所以默认是2M。抱着不信邪试试看的心态,给配成maxPostSize=-1(注意,tomcat7.0.63及以后版本,不限大小只能配-1,老版本可以配0或-1),发现依然不好使。同理,max-http-header-size我也试了,依然没作用。
说明tomcat没啥问题,这时候心态已经有点浮躁了。
接下来我能想到的只能有一个地方有问题--------那就是nginx。
于是乎我登上nginx服务器,看配置文件,打开日志,疯狂发送请求,惊喜的发现有日志,是500!仿佛发现了曙光,于是我赶紧看了一下nginx配置的请求头和body大小,心想八成是nginx配置少了。
等我一脸柯南破案的表情打开配置文件,发现body配的是10M,完全够用啊。我的天还能是哪里有问题?
后来跟技术老大说了一下这个事儿&#

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值