【发布时间】:2018-03-29 23:15:28
【问题描述】:
我有一个用 Spring (rest api) 编写并部署在 Tomcat 上的应用程序。在相同的上下文中存在使用此 api 的 angular 4 应用程序。我想将所有 404 错误重定向到 Angular 应用程序中的错误页面。我设法通过使用适当的角度路线重定向模式\app\#\some\url 中的所有网址。但这对于像 \app\some\url 这样的 URL 没有帮助,这些 URL 不是由 Angular 处理的。如果是这样的 url,Tomcat 会返回它的默认页面。我设法通过在 web.xml 文件中使用以下代码将所有 404 错误重定向到 Angular 主页。
<error-page>
<error-code>404</error-code>
<location>/</location>
</error-page>
但是当我将/ 更改为/#/404(错误页面表单角度应用程序)并尝试访问不存在的网址时,我只是得到空白页面而不是重定向。有没有办法配置我的应用程序或服务器以重定向到此错误页面?还是我必须复制此页面并将其放入 WEB-INF 以便我可以将其用作静态页面?我想避免使用第二个选项,因为在这种情况下我必须复制此页面,如果发生更改,请记住它们。
【问题讨论】:
-
直接访问/#/404页面的结果是什么
-
正如我所写。如果我将位置标记中的值更改为
/#/404Tomcat 在不存在的 url 上返回空的 404 响应并且什么都不做。
标签: spring angular tomcat web.xml