Kubernetes 入口 API 路由
Kubenetes Ingress API Routing
我有一个在默认路径上侦听的 React Web 应用程序,我希望在相同的 URL.
上包含我的 API 后端
下面是我的入口片段:
http:
paths:
- backend:
serviceName: atsweb
servicePort: 80
path: /(.*)
- backend:
serviceName: atsapi
servicePort: 80
path: /api(/|$)(.*)
我的 API 有一堆功能在 /api/ 之后路由,我在 mydomain.io/api/values 有一个测试页面,我无法访问。我的前端服务工作正常。
只是路径不正确吗?
我部署了一个独立的 API 只是为了检查容器 port/service 端口是否正确。
您似乎复制了 中的示例。你的入口注释是什么?检查重写,因为它看起来像是在进行重定向。尽管如此,适用的入口看起来像这样:
---
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/values
转到 atsapi:80/api/values
我有一个在默认路径上侦听的 React Web 应用程序,我希望在相同的 URL.
上包含我的 API 后端下面是我的入口片段:
http:
paths:
- backend:
serviceName: atsweb
servicePort: 80
path: /(.*)
- backend:
serviceName: atsapi
servicePort: 80
path: /api(/|$)(.*)
我的 API 有一堆功能在 /api/ 之后路由,我在 mydomain.io/api/values 有一个测试页面,我无法访问。我的前端服务工作正常。
只是路径不正确吗?
我部署了一个独立的 API 只是为了检查容器 port/service 端口是否正确。
您似乎复制了 中的示例。你的入口注释是什么?检查重写,因为它看起来像是在进行重定向。尽管如此,适用的入口看起来像这样:
---
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/values
转到 atsapi:80/api/values