nginx+ingress 413问题排查过程
作者:威武的小炮
处理413错误需调整Nginx的client_max_body_size及Ingress配置,合理设置body-size,若无效,检查后端限制,注意过大可能影响安全
nginx+ingress413问题排查
排查nginx配置
- 设置
client_max_body_size
参数,可以设置大点:
client_max_body_size 1024m;
排查ingress配置
// 看下ingress列表,确定请求服务对应的ingress是哪个 kubectl get ingress -A //编辑ingress,建议先备份 kubectl get ingress <ingress-name> -n <namespace> -oyaml > ./rollback/xxx.yaml // 编辑ingress kubectl edit ingress <ingress-name> -n <namespace> 添加如下信息: apiVersion: networking.k8s.io/v1 kind: Ingress metadata: annotations: nginx.ingress.kubernetes.io/proxy-body-size: "1024m" // 主要是最后一行,前面的每个ingress配置都有
注:
- body-size大小根据需求来定,特别大也不是很安全
- 如果仅仅用到nginx并且已经配置了该参数的,仍然行不通的话,建议检查下设置的作用域是否正确。
- 没有用到ingress的同学,设置第一步就可以。
- 如果两步都不行,应该就是后端服务拦截了,建议查询下后端服务是否有这种限制。
总结
以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。