Zuul路由:未找到静态资源问题

时间:2016-08-27 00:38:25

标签: netflix-zuul spring-cloud-netflix

当Zuul将请求路由到登录页面时,无法正确定位静态资源(css,js等)。将返回404 Not Found错误。

我首先进行以​​下路由设置:

ui:
  path: /ui/**
  url: http://serviceHost:8082/ui/

它运作良好。因此,当我访问http://zuulHost/ui/login/时,我将获得index.jsp,然后浏览器将请求静态资源,其路径如下:

/ui/ext/ext-dev.js

浏览器将使用http://zuulHost/ui/ext/ext-dev.js,例如,用于该资源。 Zuul会根据其设置将其路由到http://serviceHost:8082/ui/ext/ext-dev.js

但是我希望将请求转发到登录页面的根/路径,然后我添加了:

root:
  path: /
  url: http://serviceHost:8082/ui/login/

这次,在浏览器获取index.jsp文件后,它将使用:

请求资源
http://zuulHost/ext/ext-dev.js

所以在这种情况下,上下文/ui会丢失,因为浏览器不知道它,因为我在内部转发请求。浏览器中的网址仍为http://zuulHost。并且zuul不知道在哪里路由http://zuulHost/ext/ext-dev.js,因为路由表中没有匹配。

我想知道是否有解决方案。我认为在代理服务器中进行转发时这是一个非常常见的问题。感谢。

0 个答案:

没有答案