首页 > 解决方案 > Nginx代理通EKS集群

问题描述

我在 ingress-nginx 服务中部署了一个反应应用程序。我的反应应用程序包装在 nginx 中,配置如下

server {
  listen 80;

  gzip on;

  root /usr/share/nginx/html;
  index index.html index.html;

  location / {
    try_files $uri $uri/ /index.html;
  }

  location /api {
    rewrite /api/(.*) /$1 break;
    proxy_pass http://backend-app:80;
  }
}

我正在使用代理通行证连接到我的后端,因为根据设置它确实需要这个。我的入口设置如下

apiVersion: extensions/v1beta1
kind: Ingress
metadata:
  name: example-app-ingress
  annotations:
    kubernetes.io/ingress.class: nginx
    nginx.ingress.kubernetes.io/enable-access-log: "true"
    nginx.ingress.kubernetes.io/enable-cors: "true"
    nginx.ingress.kubernetes.io/http2-push-preload: "true"
    nginx.ingress.kubernetes.io/enable-owasp-core-rules: "true"
    ingress.kubernetes.io/force-ssl-redirect: "true"
    acme.cert-manager.io/http01-edit-in-place: "true"

spec:
  rules:
    - host: example.co
      http:
        paths:
          - path: /
            backend:
              serviceName: example-app
              servicePort: 80
    - host: "*.example.co"
      http:
        paths:
          - path: /
            backend:
              serviceName: example-app
              servicePort: 80
    - host: api.example.co
      http:
        paths:
          - path: /
            backend:
              serviceName: backend-app
              servicePort: 80

但是,我的后端应用程序是可访问的,但是我的反应应用程序 Nginx 无法代理传递到后端……这在 minikube 中有效,但在 eks 中无效

标签: nginx-reverse-proxynginx-ingressamazon-eks

解决方案


推荐阅读