Nginx入口控制器不';不要将url置于重定向之上

Nginx入口控制器不';不要将url置于重定向之上,nginx,kubernetes,nginx-reverse-proxy,kubernetes-ingress,Nginx,Kubernetes,Nginx Reverse Proxy,Kubernetes Ingress,我正在尝试设置nginx入口控制器;以下是入口的yaml: apiVersion: extensions/v1beta1 kind: Ingress metadata: name: ingress-rules namespace: default annotations: kubernetes.io/ingress.class: nginx nginx.ingress.kubernetes.io/rewrite-target: / nginx.ingress.

我正在尝试设置nginx入口控制器;以下是入口的yaml:

apiVersion: extensions/v1beta1
kind: Ingress
metadata:
  name: ingress-rules
  namespace: default
  annotations:
    kubernetes.io/ingress.class: nginx
    nginx.ingress.kubernetes.io/rewrite-target: /
    nginx.ingress.kubernetes.io/ssl-redirect: "false"
    nginx.ingress.kubernetes.io/force-ssl-redirect: "false"

spec:
  rules:
  - host: 
    http:
      paths:
      - path: /discover-service
        backend:
          serviceName: discover-service
          servicePort: discover-port
当我点击它时,它显示一个没有CSS和JS的HTML。正如我所看到的,他们被看在下面而不是下面

在这种情况下,如何保留原始url

更新#1

现在,我可以通过创建两个入口为静态文件提供服务,如:

ingress-rules-discover-root.yaml

[..]
metadata:
  name: ingress-rules-discover-root

  annotations:
    nginx.ingress.kubernetes.io/rewrite-target: /
    [...]

spec:
  rules:
  - host: 
    http:
      paths:

      - path: /discover-service
        backend:
          serviceName: discover-service
          servicePort: discover-port
还有一个

[...]
metadata:
  name: ingress-rules-discover-path
  namespace: default
  annotations:
    kubernetes.io/ingress.class: nginx
    [...]

spec:
  rules:
  - host: 
    http:
      paths:
      - path: /eureka
        backend:
          serviceName: discover-service
          servicePort: discover-port

我认为在这种情况下,您需要删除注释:

nginx.ingress.kubernetes.io/rewrite-target: /

此注释使入口重写
http://IP/discover-service/css/file.css
http://IP/eureka/css/file.css

我认为在这种情况下,您需要删除注释:

nginx.ingress.kubernetes.io/rewrite-target: /

此注释使入口重写
http://IP/discover-service/css/file.css
http://IP/eureka/css/file.css

如果删除该注释,我将从服务中获得404(本例中为Spring boot应用程序)因此,您的静态文件是否在
http://IP/eureka/css
?我更新了问题。现在基本上它是工作,但我不知道我是否可以实现同样的事情在另一个方面。这似乎太混乱了。我是否应该为上面的每个案例创建多个入口?是的,应该可以。一个是重写的,另一个是不删除注释的,我从服务(本例中为Spring boot应用程序)中得到404,而不是一个普通的html。因此,您的静态文件是否在
http://IP/eureka/css
?我更新了问题。现在基本上它是工作,但我不知道我是否可以实现同样的事情在另一个方面。这似乎太混乱了。我是否应该为上面的每个案例创建多个入口?是的,应该可以。一个重写,另一个不重写