Spring\Tomcat重定向到角度页面404错误



我有一个用Spring(rest api)编写并部署在Tomcat上的应用程序。在相同的上下文中存在使用此api的angular 4应用程序。我想将所有404错误重定向到angular应用程序中的错误页面。我设法通过使用适当的角度路由重定向模式app#someurl中的所有url。但这对像appsomeurl这样的url没有帮助,它们不是由angular处理的。在这种url的情况下,Tomcat将返回其默认页面。我使用web.xml文件中的以下代码将所有404错误重定向到angular主页。

<error-page>
<error-code>404</error-code>
<location>/</location>
</error-page>

但当我将/更改为/#/404(角度应用程序中的错误页面)并尝试访问不存在的url时,我只得到了空白页面,而不是重定向。有没有办法配置我的应用程序或服务器重定向到此错误页面?或者我必须复制这个页面并将其放在WEB-INF中,这样我就可以将其用作静态页面吗?我想避免第二种选择,因为在这种情况下,我必须复制这个页面,如果发生更改,请记住这两种情况。

1)在URL中使用hash#将解决您的问题。2) 另一个解决方案是在Apache或ngnix服务器上重写规则,以便它们每次都重定向到索引。

这是因为在web.xml中,它跟踪文件的位置。所以你在这里输入的值必须是一个文件路径。

从我的角度来看,您可以使用jsp将用户重定向到实际的uri路径/#/404。

最新更新