反应路由器与动态路由直接在浏览器上给出 404 link

react router with dynamic routes give 404 on a browser direct link

我有一个 React 前端连接到 Wordpress API 并且路由是在客户端用 React Router 定义的。当我使用 Link 将它们定向到动态路由时,它们工作正常。但是当我直接使用浏览器地址栏访问链接时按回车,或者我refresh.i得到

404 page not found

我知道这是因为直接调用服务器并且没有 javascript 来操纵共享主机上的 react-router 操作当我们有一个 PHP Server 在那。

考虑过 react-snapshot,但它不适合 API.Please 的动态性质,任何人都可以提供解决此问题的可能方法吗?

看看这个:https://github.com/rafrex/spa-github-pages

这个概念可能对您有所帮助。

When the GitHub Pages server gets a request for a path defined with frontend routes, e.g. example.tld/foo, it returns a custom 404.html page. The custom 404.html page contains a script that takes the current url and converts the path and query string into just a query string, and then redirects the browser to the new url with only a query string and hash fragment.