相关疑难解决方法(0)

如何使用react-router在firebase托管的create-react-app中提供robots.txt和sitemap.xml

我正在尝试在我的网站根目录中提供robots.txt和sitemap.xml,例如www.fakedomain.com/robots.txt.我在下面描述的设置似乎适用于localhost,但不适用于托管生产.托管生产返回空白页面.

使用firebase托管,create-react-app和react-router进行url处理

当前设置模仿: 如何使用React with Firebase托管在SPA上提供robots.txt?

文件夹结构: public/robots.txt public/sitemap.xml

TopApp.js

import React, { Component } from 'react';
import {
  Switch,
  Route,
  Redirect,
} from 'react-router-dom';

import App from './App';

class TopApp extends Component {
  constructor(props) {
    super(props);

    this.state = {
    };

  }

  render() {

    return (
      <Switch>
        <Route exact path="/" render={() => (<Redirect to={"/app"}/>)}/>
        <Route path={"/app"} component={() => <App />} />
      </Switch>
    )

  }

}

export default (TopApp);
Run Code Online (Sandbox Code Playgroud)

/src/index.js

import React from 'react';
import ReactDOM from 'react-dom';
import {
  BrowserRouter, …
Run Code Online (Sandbox Code Playgroud)

firebase reactjs firebase-hosting react-router create-react-app

7
推荐指数
1
解决办法
1218
查看次数

React router v4 服务静态文件 (robot.txt)

如何将我的 robots.txt 文件放到路径 www.domain.com/robots.txt?没有使用服务器,它唯一的前端带有反应路由器。

robots.txt --> 在根文件夹中。/

app.js --> 在 src 文件夹中 ./src/

(...)

export class App extends React.Component {
 render() {
  return (
   <div>
    <Switch>
      <Route exact path='/stuff' component={Stuff}/>
      <Route exact path='/' component={HomePage}/>
    </Switch>
   </div>
  )
 }
}
Run Code Online (Sandbox Code Playgroud)

如果我在本地测试它,它工作正常,localhost:4000/robots.txt 在浏览器中正确打开文件。但是在生产环境中恐怕不是这样?有任何想法吗?先感谢您

javascript robots.txt reactjs react-router

6
推荐指数
1
解决办法
3786
查看次数