Angular 4项目 我们为angular 4项目创建了dist文件夹。
我们通过在web.xml中包含WEB-INF文件夹创建了Angular4 dist文件夹的.war文件,并在tomcat中部署了.war文件并正确部署。
但是当我们在主页上的不同网址上刷新应用程序的中间时,它会显示白标错误。我无法为此找到解决方案。
任何人都有任何想法。关于如何解决这个问题
189.233.33.22.com/test/customer
答案 0 :(得分:1)
这里的问题是因为Angular路由器和Tomcat。 Tomcat首先读取url并导致404,这将是它自己的白标错误/ 404页面,而不是你的Angular入口点。
最简单的解决方案是捆绑你的index.html(尽管在这种情况下最好是.jsp,所以你可以在你的WAR和设置Tomcats自定义404页面中添加200 OK响应,而不是404 *)在你的web.xml中指向它
<error-page>
<error-code>404</error-code>
<location>/index.jsp</location>
</error-page>
这样,Tomcat将指向你的Angular入口点,Angular路由将完成其余的工作。
* re:200OK,在文件顶部添加<% response.setStatus(200); %>
将允许Tomcat使用正确的HTTP响应代码进行响应(因为它在技术上不是404,只需确保在Angular中正确处理404s )。