首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Nginx-Ingress有时重写路径失败

Nginx-Ingress有时重写路径失败
EN

Stack Overflow用户
提问于 2020-07-30 06:10:26
回答 1查看 79关注 0票数 0

该错误很少发生。大多数情况下,路径重写都像预期的那样工作,当错误被触发时,人们会得到一个default backend - 404页面作为结果。我检查了Nginx-Ingress日志,路径没有被重写,并且被传递给upstream-default-backend,而不是我的服务。

这是我的入境清单。

代码语言:javascript
复制
apiVersion: extensions/v1beta1
kind: Ingress
metadata:
  name: palette-dev-ingress
  annotations:
    kubernetes.io/ingress.class: nginx
    nginx.ingress.kubernetes.io/rewrite-target: /palette/$2
    cert-manager.io/cluster-issuer: letsencrypt
    nginx.ingress.kubernetes.io/affinity: "cookie"
    nginx.ingress.kubernetes.io/affinity-mode: "persistent"
    nginx.ingress.kubernetes.io/session-cookie-name: "stickycookie" # secure cookie
    nginx.ingress.kubernetes.io/session-cookie-expires: "172800"
    nginx.ingress.kubernetes.io/session-cookie-max-age: "172800"
    nginx.ingress.kubernetes.io/session-cookie-path: "/" 
    nginx.ingress.kubernetes.io/client-max-body-size: 50m 
    nginx.ingress.kubernetes.io/proxy-body-size: 50m 
    nginx.ingress.kubernetes.io/server-snippet: |
        location = / { 
            return 302 /palette ;
        } 
spec:
  tls:
  - hosts:
    - dev.example.cloud
    - dev.example.com
    secretName: tls-secret
  rules:
  - host: dev.example.cloud
    http:
      paths:
      - backend:
          serviceName: palette-service
          servicePort: 8080
        path: /palette(/|$)(.*) 
  - host: dev.example.com
    http:
      paths:
      - backend:
          serviceName: palette-service
          servicePort: 8080
        path: /palette(/|$)(.*) 

我个人从未经历过这个错误,但至少有两个人经历过。据我所知,如果你再次转到同一个URL,它就会消失。

我在这里很困惑,任何帮助都是非常感谢的。

EN

回答 1

Stack Overflow用户

发布于 2020-09-16 06:09:18

这被证明是一个与我们的应用程序交互的Nginx错误配置。一旦知道如何触发它,就很容易修复。在此之前,我只是尝试从日志中调试。所需要的就是更新Nginx配置(特别是server-snippet)。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/63163173

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档