迁移K8S之后,文件上传报413

问题描述

 

在迁移k8s之后,发现系统上传附件大小超过1M就会出现“ 413 Request Entity Too Large”的报错。

问题分析

问题出现的主要原因是:nginx-ingress产生的client_max_body_size大小为1m-也就是说消息体最大长度为1m,所以当上传附件大小超过1m的时候,会出现“413 Request Entity Too Large”的报错。

问题解决

nginx-ingress的问题

nginx-ingress有两种:

  • k8s官方的nginx-ingress

  • nginx出品的nginx-ingress

在百度上搜索的时候nginx-ingress的时候出现很多都是k8s官方的nginx-ingress产品的解决方案。

修改消息实体大小限制

k8s官方的ingress

annotations:
 nginx.ingress.kubernetes.io/proxy-body-size: 5M

nginx官方的ingress

annotations:
 nginx.org/client-max-body-size: "20m"

由于我们采用的nginx官方的ingress,所以我用第一种办法修改的时候配置未生效。此处附参考连接:https://blog.csdn.net/weixin_41831919/article/details/118831423

附nginx官方的ingress文档地址

https://docs.nginx.com/nginx-ingress-controller/

posted @ 2022-11-10 11:15  李成敏  阅读(373)  评论(0编辑  收藏  举报