Nginx入口控制器不';不要将url置于重定向之上
我正在尝试设置nginx入口控制器;以下是入口的yaml: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.
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
?我更新了问题。现在基本上它是工作,但我不知道我是否可以实现同样的事情在另一个方面。这似乎太混乱了。我是否应该为上面的每个案例创建多个入口?是的,应该可以。一个重写,另一个不重写