Kubenetes Ingress API Routing



我有一个在默认路径上侦听的反应 Web 应用程序,我希望将我的 API 后端包含在同一个 URL 上。

我的入口片段如下:

    http:
      paths:
      - backend:
          serviceName: atsweb
          servicePort: 80
        path: /(.*)
      - backend:
          serviceName: atsapi
          servicePort: 80
        path: /api(/|$)(.*)

我的 API 有一堆在/api/之后路由的函数,我有一个测试页面,mydomain.io/api/values 我无法访问。我的前端服务工作正常。

只是路径不正确吗?

我已经部署了一个独立的 API,只是为了检查容器端口/服务端口是否正确。

看起来您从 复制了示例。您的入口注释是什么?检查重写,因为它看起来像是进行重定向。尽管如此,适用于的入口如下所示:

---
apiVersion: extensions/v1beta1
kind: Ingress
metadata:
  name: your-ingress
  namespace: default
  annotations:
    kubernetes.io/ingress.class: nginx
    nginx.ingress.kubernetes.io/ssl-redirect: "false"
spec:
  rules:
  - http:
      paths:
      - path: /
        backend:
          serviceName: atsweb
          servicePort: 80
      - path: /api/
        backend:
          serviceName: atsapi
          servicePort: 80

检查是否有重写注释。这会将您的 uri 完全追加到下一个代理。因此,让mydomain.io/api/valuesatsapi:80/api/values

相关内容

  • 没有找到相关文章

最新更新