1

我正在使用 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>
4

0 回答 0