Nginx 414 Request-URI Too Large,看这一篇就够了

事件的起因是这样的。一般订单页面会有根据单号去查询的功能,但是客户想一次录入多个单号然后查询多条单据,前端传入的单号可以使用逗号或者空格拼接,本来这个功能也算正常,但是客户在实际使用的时候,居然一次传了几百个单号......

不料这下出事了

我一看这错误,也没细想,那肯定是业务服务的请求头大小不满足条件呀,果断去改了application.yml

server:
  max-http-header-size: 1MB

max-http-header-size的默认大小为8KB,正常情况下是够用的。为以防万一,还特意本地调试了下,非常OK。

自信满满地发布了测试环境并通知了测试,未曾想打脸只在一瞬间,依然报错!!!???

有点东西,我认真了,有种你别跑。我又看了眼报错信息,发现nginx的字样,恍然大悟。赶忙去修改了nginx.conf,在http块下新增如下配置

client_header_buffer_size 1m;

这个属性的默认值为1KB。使用以下命令重新加载配置

nginx -s reload

心想这下应该可以了吧,来来来测试。

呵呵,nginx的报错没了,来了个新的家伙:Request failed with status code 413.

再次陷入困境,还有哪里有问题?苦思冥想,我是不是还有个Gateway网关呢?!跟业务服务一样加上max-http-header-size配置后,满心欢喜地去发布,然后偷偷去点了下。WTF,居然还还还不行,这下真的是被逼入绝境了。

开始各种百度查资料,资料也并不多,碰碰运气吧。经过不懈地努力搜寻,抱着试一试的态度,在Gatewayapplication.yml中加上了下面的配置

server:
  netty:
    max-initial-line-length: 1MB

哈哈哈,Oh yeah!

希望可以帮到大家,有问题大家可以一起交流学习!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

BruceLuX

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值