React Router适用于本地计算机,Chrome但不适用于Safari和其他浏览器,
<Switch>
<Route exact path={"/"} component={Home} />
<Route path="/programs/:slug" component={Programs} />
<Route path="/page/:slug" component={Page} />
<Route component={NotFound} />
</Switch>
这就是我的代码,但它在开发模式下完美无错,但在生产时,当我导航到program /:slug或page /:slug时,safari会出现404错误
答案 0 :(得分:2)
我将此添加到.htaccess
RewriteBase /
RewriteCond %{REQUEST_URI} !^/(assets/?|$)
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.html [L]
感谢Kishan Mundha的解释
答案 1 :(得分:1)
您可能需要在服务器上配置单个入口点index.html
。所有网址都应定位到index.html
,并且入口点将决定如何根据路线呈现和内容。
答案 2 :(得分:1)
如果您使用的是pm2 serve
,则只需添加--spa
标志。