kubeshpre上nextcloud上传文件超过1M提示“未知错误”
经检查返回http状态码是413,这个提示是由于上传文件过大引起的,是因为请求长度超过了nginx默认的缓存大小和最大客户端最大请求大小。
如果是在传统的启动方式中,那么需要修改对应server中的请求体大小控制
# 设置客户端请求体最大值
client_max_body_size 8M;
# 配置请求体缓存区大小
client_body_buffer_size 128k;
fastcgi_intercept_errors on;
然后重启nginx
nginx -s reload
可是在kubesphere中是通过yaml文件来管理这些配置,所以处理过程是:
进入菜单:》应用负载》应用路由
找到对应系统的路由,这里是nc-router
,
在列表中点击对应折叠按钮,选择编辑YAML
,在对应的配置文件中annotations
的下级追加以下几行
nginx.ingress.kubernetes.io/proxy-body-size: '0'
nginx.ingress.kubernetes.io/proxy-read-timeout: '600'
nginx.ingress.kubernetes.io/proxy-send-timeout: '600'
即
kind: Ingress
apiVersion: networking.k8s.io/v1
metadata:
name: nc-router
namespace: zzunextcloud
annotations:
kubesphere.io/creator: zzu-ws-admin
nginx.ingress.kubernetes.io/proxy-body-size: '0'
nginx.ingress.kubernetes.io/proxy-read-timeout: '600'
nginx.ingress.kubernetes.io/proxy-send-timeout: '600'
修改后无需重启即可生效