Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/kubernetes/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Kubernetes Kong::X-FORWARDED-FOR中缺少客户端IP_Kubernetes_Kong_X Forwarded For - Fatal编程技术网

Kubernetes Kong::X-FORWARDED-FOR中缺少客户端IP

Kubernetes Kong::X-FORWARDED-FOR中缺少客户端IP,kubernetes,kong,x-forwarded-for,Kubernetes,Kong,X Forwarded For,在Kubernetes中使用Kong入口控制器(v2.1)。在数字海洋中奔跑 问题是,HTTPS请求的X-FORWARDED-FOR标头中缺少客户端IP,但HTTP请求中存在客户端IP。我还需要能够在HTTPS请求上看到IP 在HTTP请求的X-FORWARDED-FOR标头中接收到的值为“,”。 然而,在HTTPS请求的情况下,值为“”。客户端ip丢失 孔使用帮助安装。配置中最相关的部分是: proxy: enabled: true http: enabled: true

在Kubernetes中使用Kong入口控制器(v2.1)。在数字海洋中奔跑

问题是,HTTPS请求的X-FORWARDED-FOR标头中缺少客户端IP,但HTTP请求中存在客户端IP。我还需要能够在HTTPS请求上看到IP

在HTTP请求的X-FORWARDED-FOR标头中接收到的值为“,”。 然而,在HTTPS请求的情况下,值为“”。客户端ip丢失

孔使用帮助安装。配置中最相关的部分是:

proxy:
  enabled: true
  http:
    enabled: true
  annotations:
    service.beta.kubernetes.io/do-loadbalancer-protocol: "http"
    service.beta.kubernetes.io/do-loadbalancer-algorithm: "round_robin"
    service.beta.kubernetes.io/do-loadbalancer-tls-ports: "443"
    service.beta.kubernetes.io/do-loadbalancer-tls-passthrough: "true"

问题在于SLL传递。使用此配置时不能修改标题。您应该使用SSL终止,除非您有一些特定的法规遵从性要求

有关更多信息,请签出文档:

您所说的是合理的,但我将passthrough设置更改为false,没有任何更改。service.beta.kubernetes.io/do-loadbalancer-tls-passthrough:“false”您需要将SSL证书上载到LB才能配置SSL终止()并通过
service.beta.kubernetes.io/do loadbalancer证书id
注释而不是
service.beta.kubernetes.io/do loadbalancer tls passthrough
。您的方法是正确的。已配置SSL终止。但现在的问题是DO LB终止SSL,然后向代理的HTTPS端口发出HTTP请求。找不到将LB配置为a)将HTTP请求发送到Kong代理的HTTP端口,或b)将HTTPS请求发送到Kong代理的HTTPS端口的方法。你能看一下吗。谢谢