我正在使用 ReactJS 前端和 Java EE + tomcat 后端创建 Web 应用程序。我正在使用 React Router 进行路由。在 localhost 上一切正常,但在已部署的版本上出现错误。
<Route exact path='/' component={LandingPage} />
<Route path='/howitworks' component={HowItWorks} />
<Route path='/about' component={About} />
<Route path='/pricing' component={Pricing} />
<Route path='/appartment/:id' render={(props) => <Appart {...props} />} />
<Route exact path='/appartments' render={() => <Appartment />} />
在我添加的 tomcat web.xml 文件中:
<error-page>
<error-code>404</error-code>
<location>/index.html</location>
</error-page>
所以一切都很好,除了:
<Route path='/appartment/:id' render={(props) => <Appart {...props} />} />
在本地主机上工作。我得到的错误是 HTTP 404。
有什么建议么?谢谢!
编辑:web.xml 内容
<web-app>
<context-param>
<param-name>ImagesFolder</param-name>
<param-value>/images</param-value>
</context-param>
<servlet>
<servlet-name>Jersey Web Application</servlet-name>
<servlet-class>org.glassfish.jersey.servlet.ServletContainer</servlet-class>
<init-param>
<param-name>jersey.config.server.provider.packages</param-name>
<param-value>com.web.rest</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>Jersey Web Application</servlet-name>
<url-pattern>/rest/*</url-pattern>
</servlet-mapping>
<welcome-file-list>
<welcome-file>index.html</welcome-file>
</welcome-file-list>
<error-page>
<error-code>404</error-code>
<location>/index.html</location>
</error-page>
</web-app>