访问414是因为请求头参数过长的错误,解决办法为加大client_header_buffer_size 和large_client_header_buffers的配置,需要修改nginx配置项

我这里使用的是k8s,如果jenkins 也是同样的道理

如果是多层nginx则需要定位问题产生源的层级如下是我的问题产生。

此处出现问题
外网域名访问
内网服务器
服务发现
服务A

通过http内网路由访问服务A

需要在Kubernetes nginx-ingress-controller修改配置项
在这里插入图片描述

在这里插入图片描述
如阿里云,添加则提示支持中划线,下划线。
在这里插入图片描述
直接输入下划线则不生效,可能直接报错,我这个版本是报错。

在这里插入图片描述
因内部直接将下划线转义成中划线处理,所以此处需要填写中划线

client_header_buffer_size 和large_client_header_buffers必须配置到nginx-ingress-controller的nginx-configuration
里面,进而注入到nginx.conf里面的http配置段覆盖默认值;通过ingress的annotation,虽然能单独配置client_header_buffer_size 和large_client_header_buffers,注入到nginx.conf的server段,但是优先级较低,系统仍以http的配置为主。

client_header_buffer_size 和large_client_header_buffers配置到nginx-ingress-controller的configuration里面时,必须改成中划线。

参考资源 https://www.e-learn.cn/topic/3248654

Logo

K8S/Kubernetes社区为您提供最前沿的新闻资讯和知识内容

更多推荐