reactjs - 谷歌没有显示 React-Helmet 的标题和描述
问题描述
我正在使用 react-helmet 为我的每个页面赋予我的 React 应用程序的唯一标题和描述。当我使用开发工具检查页面时,标题在浏览器选项卡中正确呈现,并且标题和描述正确呈现。然而,谷歌并没有在他们的搜索结果中显示标题或描述。我究竟做错了什么?
我已经研究过使用 prerender.io,但由于我的网站没有后端(目前它只是一个营销网站),我不确定这是一个好的解决方案。我删除了一些元素,但这基本上是我的代码的外观......
import React, {Component} from 'react';
import {Helmet} from "react-helmet";
class Home extends Component {
render() {
return (
<div>
<Helmet>
<title> My title </title>
<meta name="description" content="My description"/>
</Helmet>
</div>
)
}
}
export default Home;
解决方案
我正在托管客户端呈现的 React 应用程序,并react-helmet 5.2.1
用于管理og
标签和其他与共享相关的标头。我遇到了 Facebook(和其他网站)所描述的问题,因为我的共享相关标题没有被识别。
我的 React 网站是使用Netlify托管的,修复是启用 Netlify 的 Prerendering 设置。启用 Prerednering 后,与共享相关的标头立即被识别。似乎无法识别客户端呈现的标头(来自此SO question的更多信息)。
顺便说一句,我发现 Facebook 提供的共享调试器在调试与共享相关的标头问题时非常有用。
推荐阅读
- generator - 寻找有限域的生成元
- python-3.x - 使用 Python 在 Azure 存储容器上上传多个文件作为 blob 上传时间非常慢
- c# - 如何将文件从服务器下载到共享网络文件夹?
- java - 如何告诉 FieldEditorPreferencePage 以编程方式无效/重绘?
- c - 数据被扭曲,循环打印
- c# - Google 课堂 - 批处理路径
- c# - 我在哪里可以获得 C# 中 AD CA 请求提交的常量值
- android - 未找到 Android 单元测试依赖项
- java - Java流比较两个列表之间的属性相等并返回true或false
- android - 在 Android 中同时在 webrtc 和媒体记录器中使用麦克风?