我的nginx入口控制器在ingress-nginx
命名空间中,我已经将大型客户端头缓冲区设置为4 16k
、4 32k
等。
kind: ConfigMap
apiVersion: v1
metadata:
name: nginx-configuration
namespace: ingress-nginx
data:
proxy-buffer-size: "16k"
large-client-header-buffers: "4 16k"
当我检查nginx控制器pod中的配置时,我看到:
kubectl exec -n ingress-nginx nginx-ingress-controller-65fd579494-jptxh cat /etc/nginx/nginx.conf | grep large_client_header
large_client_header_buffers 4 16k;
因此,似乎一切都配置正确,但我仍然收到错误消息400 Bad Request Request Header Or Cookie Too Large
3条答案
按热度按时间tv6aics11#
关于这个问题有dedicated topic on github。你可以找到可能的解决方案。这个问题应该在this issue的基础上完全消除。
还看更多的教程如何解决这个问题,但从浏览器网站:
0lvr5msh2#
请确保请求通过的每个nginx/入口都应包含配置
https://kubernetes.github.io/ingress-nginx/user-guide/nginx-configuration/configmap/#large-client-header-buffers
http://nginx.org/en/docs/http/ngx_http_v2_module.html#http2_max_header_sizehttps://nginx.org/en/docs/http/ngx_http_v2_module.html#http2_max_field_size
jdg4fx2g3#
我仍然有这个问题,large_client_header_buffer根本不工作。我已经记录了所有的配置,一些配置复制正确,但那一个没有。有人知道发生了什么吗?这是荒谬的,它是多么困难的配置。