在React JS中使用react build强制重新加载页面时找不到404

时间:2018-07-26 12:55:24

标签: reactjs react-router

我在重新加载页面时遇到了Not Found错误,但是我可以正常使用build重新加载。这是我的Router标记。 我没有使用createBrowserHistory。是问题吗?

<Router basename={process.env.PUBLIC_URL}>
           <Switch >
          <div >
            <Navbar />
            <Route exact path="/" component={HomeComponent} />
            <Route exact path="/score/:id" component={ScoreComponent} />
            <Route exact path="/login" component={LoginComponent} />
            <Route exact path="/forgotPassword" component={ForgotPasswordComponent} />
          </div> 
          </Switch >
      </Router>

2 个答案:

答案 0 :(得分:1)

我将通过以下.htaccess代码

解决此问题
<IfModule mod_rewrite.c>
  RewriteEngine on
  RewriteCond %{REQUEST_FILENAME} !-f
  RewriteCond %{REQUEST_FILENAME} !-d
  RewriteCond %{REQUEST_URI} !=/favicon.ico
  RewriteRule ^ index.html [L]
</IfModule>

答案 1 :(得分:0)

您得到404,因为路由器不知道选择哪个路径。如果您使用Redirect标签来捕获所有其他情况,该怎么办?