我已经通过create-react-app创建了我的React应用程序。 然后我把它放入GCP存储。 我将网站配置(主页面和404页面)设置为index.html。
文件夹结构就像这样
├── asset-manifest.json
├── favicon.ico
├── index.html
├── manifest.json
├── service-worker.js
├── sitemap.txt
├── static
│ ├── css
│ │ └── main.****.css
│ └── js
│ └── main.****.js
我正在使用react-router。路由就像这样
<Route exact path="/" component={Home} />
<Route exact path="/about" component={About} />
当我从网络浏览器检查我的应用时,它完全没问题。
我可以看到www.mydomain.com
和www.mydomain.com/about
当我通过&#34; Fetch as Google&#34;检查时,www.mydomain.com
没问题。
但www.mydomain.com/about
返回&#34;未找到&#34;
我已经使用Chrome 41(旧版本)进行了检查。我可以看到www.mydomain.com/about
有谁知道为什么我找不到? 我应该检查哪一部分?
答案 0 :(得分:0)
尝试将我的应用部署到GitHub页面时出现此问题。我决定使用netlify部署我的应用程序,因为netlify有一个prerender选项。现在&#34;取用谷歌&#34;识别路线。
我的App.jsx:
import React, { Component } from 'react';
import { BrowserRouter as Router, Route } from "react-router-dom";
import 'babel-polyfill';
import Home from './components/Home';
import About from './components/About';
import Contact from './components/Contact';
import Navbar from './components/CustomNavbar';
import Footer from './components/footer';
class App extends Component {
render() {
return (
<Router basename={process.env.PUBLIC_URL}>
<div>
<Navbar />
<Route exact path="/" component={Home} />
<Route path="/about" component={About} />
<Route path="/contact" component={Contact} />
<Footer />
</div>
</Router>
);
}
}
export default App;