微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

为某些响应禁用 nginx 入口控制器中的缓存控制

如何解决为某些响应禁用 nginx 入口控制器中的缓存控制

我有这个入口配置,但所有 html 和 json 响应页面都不包含添加标题

apiVersion: networking.k8s.io/v1beta1
kind: Ingress
Metadata:
  name: {{ $app }}-ingress
  labels:
    app: {{ $app }} 
    chart: chart-{{ $app }}
    app.kubernetes.io/managed-by: Helm
  annotations:
    Meta.helm.sh/release-name: {{ $app }}
    Meta.helm.sh/release-namespace: {{ .Release.Namespace }}
    kubernetes.io/ingress.class: Nginx
    Nginx.ingress.kubernetes.io/proxy-body-size: "{{ $proxy_body_size }}"
    Nginx.ingress.kubernetes.io/proxy-read-timeout: "{{ $proxy_read_timeout }}"
    Nginx.ingress.kubernetes.io/proxy-connect-timeout: "{{ $proxy_connect_timeout }}"
    Nginx.ingress.kubernetes.io/proxy-send-timeout: "{{ $proxy_send_timeout }}"
    Nginx.ingress.kubernetes.io/proxy-buffer-size: "{{ $proxy_buffer_size }}"
    Nginx.ingress.kubernetes.io/rewrite-target: /$1
    Nginx.ingress.kubernetes.io/configuration-snippet : |
        if ($request_uri ~* \.(html|json)) {
           add_header Cache-Control "no-cache,no-store";
        }
spec:
  tls:
    - hosts:
        - {{ $alias }}
  rules:
    - host: {{ $alias }}
      http:
        paths:
          - path: /(.*)
            backend:
              serviceName: {{ $app }}-service
              servicePort: http-back

我只想对 html 和 json 内容响应禁用缓存控制。当我删除 if ($request_uri ~* .(html|json)) 条件时,所有响应都添加了标头。所以这意味着配置片段中的条件不正确。

你能帮忙吗?

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。