【问题标题】:How to get the client domain info from kubernetes pod?如何从 kubernetes pod 获取客户端域信息?
【发布时间】:2015-11-26 10:13:43
【问题描述】:

我在 Kubernetes 的 pod 上运行 nginx,我想根据客户端请求域在 nginx 中做 proxy_pass 类似 a.b.c 。但我得到了服务名称。

那么如何从 Kubernetes pod 中获取客户端域信息呢?

【问题讨论】:

    标签: kubernetes


    【解决方案1】:

    如果我理解,您要求的是 HTTP“主机”标头,对吗? Kubernetes 根本没有涉及到这一点。您能否进一步解释一下“我得到了服务名称”的含义?你从哪里得到的?

    【讨论】:

    • 我使用入口控制器。我在 ingress-nginx 中得到了proxy_pass http://my-nginx-svc,并且我在标头中得到了每个请求的主机是my-nginx-svc。如果我在入口控制器中的 nginx.conf 中设置 proxy_set_header Host $host;,我得到了正确的“主机”标头。
    • 你是对的,默认情况下ingress-nginx不会传递Host头。该模板使用 nginx 默认值。请检查生成配置的模板代码github.com/kubernetes/contrib/blob/master/Ingress/controllers/…
    • @sope github.com/kubernetes/contrib/pull/305 已合并。请为 nginx-alpha 构建一个新镜像。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-10-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-11-30
    • 2011-12-06
    • 2020-04-10
    相关资源
    最近更新 更多