0

我正在尝试在本地 Minikube 上设置 Nginx Ingress,但在实际匹配的路径上遇到问题。我设置了两个服务,我希望每个服务在同一个域中提供不同的路径。一个是基于 Django 的 API 后端,另一个是基于 Node 的前端。我的入口配置如下:

apiVersion: extensions/v1beta1
kind: Ingress
metadata:
  name: test
spec:
  rules:
  - host: test.local
    http:
      paths:
      - path: /
        backend:
          serviceName: frontend
          servicePort: 3000
      - path: /api
        backend:
          serviceName: backend
          servicePort: 8000
      - path: /admin
        backend:
          serviceName: backend
          servicePort: 8000
      - path: /static
        backend:
          serviceName: backend
          servicePort: 8000

如果我http://test.local/在浏览器中导航到,Node 前端成功地为该路由提供服务。如果我导航到http://test.local/admin/,则 Django 后端成功地为该路由提供服务,并更正重定向到,http://pingpong.local/admin/login/?next=/admin/因为我没有登录(这也从 Django 后端正确提供)。但是,没有任何 CSS 加载,因为http://test.local/static/出于某种原因由 Node 前端提供服务。路由下的所有/api内容也由 Node 前端提供服务。

我能够找到的任何文档、示例或其他资源似乎都没有表明我在这里做错了什么,所以我有点茫然地弄清楚它为什么会起作用

4

1 回答 1

0

好吧,我仍然不确定到底是什么问题,但是在我的计算机重新启动后,Ingress 现在正在按照我的预期工作……目前最好的猜测是某处发生了某种缓存。

于 2017-05-25T15:30:14.453 回答