Nginx反向代理解决超长请求串

Nginx遇到超长的post或get请求时,nginx会反回413、400、414错误。

post和get方式的解决办法:

针对post方式


client_max_body_size 10M;

指定允许客户端请求的最大的单个文件大小,如果请求大于指定的值,客户端将收到一个"413 Request Entity Too Large"错误。

client_body_in_single_buffer 16k;

指定连接请求使用的缓存区大小,如果连接请求超过缓存区指定的值,那么这些请求或部分请求将尝试写入一个临时文件。

client_body_temp_path /data/tmp;

设置临时文件存放路径。只有当上传的请求体超出缓存区大小时,才会写到临时文件中,注意路径要有写入权限。

针对get方式


client_header_buffer_size 8k;

指定客户端请求的http头部缓存区大小,大多数情况下一个头部请求的大小不会大于1k,不过如果有来自于wap客户端的较大的cookie它可能会大于1k,Nginx将分配给它一个更大的缓存区,这个值可以在large_client_header_buffers里面设置。

large_client_header_buffers 16 16k;

如果设置过小HTTP头/Cookie过大时会报400错误"nginx 400 bad request ",如果超过buffer就会报"414 Request URI too large"错误,nginx接受最长的HTTP头部大小必须比其中一个buffer大,否则就会报"nginx 400 bad request "错误。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值