2017-08-11 61 views
0

在生产模式下部署后,我遇到了一些路由问题。 (我的应用在aws S3 Bucket上运行)一切正常,只有路由有一些问题。在生产模式下部署reactJS应用程序 - 路由问题

匹配不知道路由是问题。我有以下路由:

import {BrowserRouter as Router, hashHistory, Switch, NavLink, Route} from "react-router-dom"; 

<Provider store={store}> 
    <AppContainer> 
     <Router history={createHistory}> 
      <div> 
       <ThemeProvider theme={theme}> 
        <div className={i.content}> 
         {/*Switch is for Error Routing*/} 
         <Switch> 
          <Route exact path="/" component={() => (<Logins foo={"test"} loginHandler={this.props.loginHandler}/>)}/> 
          <Route path="/logout" component={() => (<Logins foo={"test"} loginHandler={this.loginHandler}/>)}/> 
          <Route path="/signup" component={() => (<SignUp loginHandler={this.loginHandler}/>)}/> 
          <Route path="/imprint" component={() => (<Impressum/>)}/> 
          <Route path="/verification/:verificationToken/:verificationEmail" component={() => (<Verification/>)}/> 
          <Route component={() => (<Error/>)}/> 
         </Switch> 
         <div className={i.footer}> 
          <a href="https://johner-institut.de" target="_blank">{t('application:made')} <img src={jilogo} width="8px;"/> 
          </a> | <NavLink to="/imprint">{t('application:imprint')}</NavLink> | <LanguageChooserSmall/> 
         </div> 
        </div> 
       </ThemeProvider> 
      </div> 
     </Router> 
    </AppContainer> 
</Provider> 

已知的路线工作正常。但在错误的情况下,交换机应该影响所有不知道的路由应该被重定向到<Route component={() => (<Error/>)} />,但那不工作...

可能是什么问题?

+0

你得到任何错误或任何东西? '不工作'不是很具描述性。 –

+0

它返回一个404找不到 – Felix

+0

和404来自服务器? –

回答

1

尝试在cloudfront中的custom error response设置中将response page path设置为index.html