配置片段注释不会向响应添加自定义标头

时间:2019-07-12 12:25:44

标签: google-kubernetes-engine kubernetes-ingress nginx-ingress

我需要添加响应标头“ X-Robots-Tag:noindex,nofollow”。入口控制器包含指令more_set_headers "X-Robots-Tag: noindex, nofollow";。但对此我没有看到。

apiVersion: extensions/v1beta1
kind: Ingress
metadata:
  annotations:
    kubernetes.io/ingress.global-static-ip-name: development-ip
    nginx.ingress.kubernetes.io/configuration-snippet: |
      more_set_headers "X-Robots-Tag: noindex, nofollow";
  name: front-ingress
  namespace: staging
spec:
  rules:
  - host: somedomain
    http:
      paths:
      - backend:
          serviceName: front-service
          servicePort: 80
        path: /*
      - backend:
          serviceName: backend-service
          servicePort: 80
        path: /api/*
  tls:
  - hosts:
    - somedomain
    secretName: front-tls-secret

2 个答案:

答案 0 :(得分:0)

如果我对您的理解正确,则可以尝试使用server-snippet

apiVersion: v1
data:
  server-snippet: add_header X-Robots-Tag “noindex, nofollow”;

在nginx config服务块中的一个片段。

或者您可以使用nginx.ingress.kubernetes.io/server-snippet将其添加到特定的入口:

nginx.ingress.kubernetes.io/server-snippet: |-
  add_header X-Robots-Tag "noindex, nofollow";

在nginx config服务块中的一个片段。

请告诉我是否有帮助。

答案 1 :(得分:0)

问题:集群有2个入口控制器nginx / gce。批注已应用于nginx入口控制器,但流量是通过gce入口控制器进行的。