【问题标题】:how to make google bots crawl my react website with dynamic urls and display them in google如何让谷歌机器人使用动态网址抓取我的反应网站并在谷歌中显示它们
【发布时间】:2021-12-28 07:36:14
【问题描述】:

我有这个网站,我们可以创建新问题。每当创建一个新问题时,都会生成一个新网址,我希望每次添加新问题时谷歌都会抓取我的网站并将其显示在谷歌中。

我的前端位于react js,后端位于express js

我的前端托管在firebase,后端托管在heroku

由于我使用的是 javascript,并且我的网址都是动态生成的,因此谷歌不会抓取或索引它们。

目前,我正在将所有动态创建的 url 写入后端根文件夹中名为 sitemap.txt 的文件中。

我应该怎么做才能达到这个目的?

我的站点地图链接 https://ask-over.herokuapp.com/sitemap.txt

我的反应应用程序链接 https://wixten.com

我的 express.js 链接 https://ask-over.herokuapp.com

我想添加 https://ask-over.herokuapp.com/sitemap.txt 到谷歌搜索控制台

【问题讨论】:

  • 可能值得花一些时间搜索“动态反应页面上的 SEO”或“动态页面网络搜索”等的变体,因为这个主题讨论得相当频繁。
  • 看看next.js
  • @Mohammad 我已经完成了我在创建反应应用程序中的项目,那么我该如何从反应更改为下一个
  • 所以我给你写一个答案

标签: reactjs express sitemap xml-sitemap


【解决方案1】:

事实上,当 SEO 很重要时,create-react-app 是错误的工具。因为:

  • 只有一个 HTML 文件
  • 单个 HTML 文件中没有内容
  • 第一次重载
  • 等,[搜索使用nextjs的原因a good article

SPA 最适合 PWA、管理面板和类似的东西。

但是看看https://nextjs.org/docs/migrating/from-create-react-app。我的建议是制定一些计划以完全迁移到Next.js。 另外,搜索react SEO best practies 并使用React Helmet 等帮助程序和实用程序。

【讨论】:

    【解决方案2】:

    Google 或任何其他网络爬虫无法爬取您的 SPA 网站。解决此问题的最佳方法是使用像 Next.js 这样的服务器端框架,或者使用预渲染并将爬虫重定向到预渲染服务器而不是主网站。

    您可以查看 prerender.io,它也有开源版本,您可以在单独的服务器上运行它,并为您的 Web 服务器(apache/nginx/others)使用其中一个 sn-ps/插件来重定向对不同上游服务器的请求。

    我一直将它用于我的一个基于 VueJs 构建的项目(电子商务商店),它就像一个魅力。

    要了解基础知识,它的作用是将您的网站加载到浏览器中,并将呈现的代码缓存在其数据库/缓存中,当任何爬虫访问您的网站时,它们将被重定向到缓存,即生成您网站的html页面,爬虫将能够顺利读取所有内容。

    【讨论】:

      【解决方案3】:

      如果你想要一个对 seo 友好的网站,那么 create-react-app 不是要走的路。 如果它在登录屏幕后面,您可以使用 create-react-app。 如果该站点是博客或文档站点,我建议您迁移到 nextjs 或 gatsby js,或者如果它是一个非常小的网页,请使用原始 html、css、js

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2013-04-12
        • 1970-01-01
        • 2017-02-13
        • 1970-01-01
        • 1970-01-01
        • 2012-06-09
        相关资源
        最近更新 更多