4

我有一个使用客户端渲染的 React (redux) 应用程序。我希望我的网站描述和标题可以被谷歌抓取(他们似乎抓取异步的东西,因为我的网站在谷歌中显示很好,带有来自我的 h1 标签的文本)所以我找到了一个名为 react-helmet 的库,它建立在 react-document-图书馆。这个库允许我根据我当前的路线更改文档标题和描述。

所以这是我的问题:

  1. 目前(1 周后)我的谷歌搜索结果没有改变,这让我认为谷歌没有抓取我的网站或谷歌抓取了它但没有注意到描述的动态变化,只是使用了我的 h1 标签。但是我怎样才能检查发生了哪一个呢?
  2. 我注意到 Instagram 有一个客户端渲染的应用程序,但不知何故,当我检查页面源时,他们已经更改了每个页面上的标题和描述,即使 body 标签只是一个空 div,这是客户端渲染应用程序的典型特征。我不明白他们怎么能做到这一点。

反应头盔

4

2 回答 2

1

遵循 React Helmet 服务器渲染文档:https ://github.com/nfl/react-helmet#server-usage 。

于 2016-03-18T03:19:03.723 回答
1

使用 Google Search Console 查看 Google 如何抓取您的网站,并启动您网页的抓取/索引:https: //www.google.com/webmasters/tools/

至于 instagram 如何在客户端应用程序中显示元标记——当它们检测到爬虫或机器人正在查看它时,它们可能会在服务器端呈现和提供静态内容。您可以自己为您的内容执行此操作,而无需将整个应用程序转换为服务器端呈现。谷歌预渲染服务。(我不会提及任何示例,因为我不想在没有对它们发表意见的情况下提升他们的 SEO。)

另一种选择是静态渲染您的 React 应用程序,并在必要时提供它。请参阅 Graphcool 的 prep(似乎有些过时)、react-snap 和 react-snapshot。全部在本地服务器上呈现站点并下载呈现的 html 文件。如果你需要的只是<head>那么你应该很好!

于 2017-10-23T18:23:36.393 回答