微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

基于 nginx-ingress 路径的 Angular 应用程序

如何解决基于 nginx-ingress 路径的 Angular 应用程序

我有一个 angular 应用程序,它使用 Nginx-alpine 作为基本映像进行 dockerized。我的基础设施托管在 AKS 集群版本 1.18.14 上。和 nginx-ingress 将流量路由到 pods k8s.gcr.io/ingress-Nginx/controller:v0.44.0 。下面是我的入口

apiVersion: networking.k8s.io/v1beta1
kind: Ingress
Metadata:
  name: ingress
  namespace: default
  annotations:
    kubernetes.io/ingress.class: Nginx
    Nginx.ingress.kubernetes.io/ssl-redirect: "false"
    Nginx.ingress.kubernetes.io/use-regex: "true"
    Nginx.ingress.kubernetes.io/rewrite-target: /$1
spec:
 rules:
  - http:
     paths:
      - path: /?(.*)
        backend:
        serviceName: portal
        servicePort: 80

当我使用 ip-address/ 应用程序加载应用程序时。 但是,如果我想在下面的 nginx-ingress 应用程序中添加路径,则不会加载。

 - path: /myportal(/|$)(.*)
        backend:
          serviceName: my-portal
          servicePort: 80

当我点击 ip-address/myportal 时,应用无法加载。我应该做哪些改变

解决方法

您的 yaml 配置似乎有误。

应该是:

  paths:
  - backend:
      serviceName: my-portal
      servicePort: 80
    path: /myportal(/|$)(.*)

代替:

 - path: /myportal(/|$)(.*)
        backend:
          serviceName: my-portal
          servicePort: 80

确保缩进到位且语法正确。使用 this example 作为参考。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。