Kubernetes Nginx Ingress控制器 / 缓存静态资源

3

我有一个关于在nginx ingress控制器后运行的应用程序返回的图片的问题。它们总是返回200而不是预期的304。

经过一番搜索,我发现可以在服务器中添加特定的块;所以在元数据>注释下添加了以下内容:

 ingress.kubernetes.io/server-snippets: |
   location ~* \.(?:ico|css|js|gif|jpe?g|png)$ {
     expires 30d;
     add_header Pragma public;
     add_header Cache-Control "public";
   }

问题仍然存在,因此仍然会得到一个永久的200;“ssh”进入nginx pod并对创建的nginx.conf进行查看,我没有看到这个块出现在任何地方。所以我有点困惑如何改进它。我正在使用kube-lego,但没有发现它是否会在这里产生影响。

1
你正在使用哪个实现 https://github.com/nginxinc/kubernetes-ingress 还是 https://github.com/kubernetes/ingress-nginx? - Droga Mleczna
嗯,我不是完全确定。我拉取 gcr.io/google_containers/nginx-ingress-controller:0.8.3。 - Ben
2个回答

7

如果有其他人(可能会是未来的我)遇到这个问题,注释是nginx.ingress.kubernetes.io/server-snippet


AHA!我是正确的! - AWippler

1
在nginx-0.9.0-beta.16中增加了对server-snippets注释的支持。 将您的入口控制器镜像升级到quay.io/kubernetes-ingress-controller/nginx-ingress-controller:0.9.0-beta.16

嗯...成功使用quay.io/kubernetes-ingress-controller/nginx-ingress-controller:0.9.0-beta.17进行部署。我可以看到在ingress.kubernetes.io/configuration-snippet中添加的内容,但是在ingress.kubernetes.io/server-snippets中添加的内容没有生效。有什么想法吗? - Ben

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接