[英]Serving react over static server without having people running into 404
我有一个反应的网站上投放了: https://aero.mysite.com/profile
在我反应过来的应用程序,并且我用的路由器和history.push /替换,从而能够有路径,例如https://aero.mysite.com/profile/path?query=number
。 但是,假设有人将这个网址复制并粘贴到其他人,他或她将得到404,因为在静态服务器上实际上并不存在https://aero.mysite.com/profile/path
...(我正在使用我制作的koa +文件服务中间件)。 有什么解决方案来应对这一挑战?
如果您使用的是BrowserRouter或类似的浏览器,则将其替换为在网络服务器路径和前端路由之间添加“#”的哈希路由器
浏览器路由器看起来像这样http://example.com/about
而哈希路由器看起来像这样http://example.com/#/about
这将防止Web服务器处理UI路由
有关更多信息,请阅读本文
import { HashRouter as Router, Route } from 'react-router-dom';
import App from './components/App';
import Home from './components/Home';
import About from './components/About';
import Services from './components/Services';
render((
<Router>
<div>
<Route exact path="/" component={Home} />
<Route path="/about" component={About} />
<Route path="/courses" component={Services} />
</div>
</Router>
), document.getElementById('root'));
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.