谷歌 SEO 基础

SEO(搜索引擎优化)

通常是指对网站内容进行细微修改,使得用户体验及搜索排名提升。

Google 搜索工作方式

三个阶段:

  • 抓取:Google 会使用抓取工具从互联网发现网页,并下载
  • 索引编制:Google 分析网页文本、媒体后将信息存入数据库 Google 索引
  • 呈现搜索结果:在 Google 中搜索时、Google 会返回查询相关信息

抓取

首先找到存在那些网页,因为不存在保护所有网页的注册表,因此 Google 需要不断的搜索和更新网页,并添加到已知网页列表。

当通过列表形式提交站点地图供 Google 抓取时,Google 也会发现其他网页。

Google 会以最新版的 Chrome 呈现网页并获取,但是不会抓取所有发现的网页,因为有些网页可能被设置为禁止抓取,或需要进行登录。

索引编制

抓取网页后,Google 会尝试处理和分析内容,关键内容标记和属性来了解网页内容。

在这一过程,Google 会确定网页是否重复或是否是规范网页(可能会显示在搜索结果中的网页)。

Google 首先会将在网络中找到的相似内容网页归为一组(聚类)。然后选择其中最具代表性的。而该组中其他网页会作为备用版本在不同情况下提供。

Google 会收集关于规范网页及其内容的信息(包含网页语言,内容针对的国家地区,网页易用性等),这些信号会在呈现搜索结果时用到。

不是所有的网页都会被编入索引,常见的索引编制问题有:

  • 网页质量过低
  • Robots meta 规则禁止编入索引
  • 网站设计使得索引编制难以进行

呈现搜索结果

用户搜索时,会在索引中搜索匹配网页,并返回 Google 认为搜索内容最相关的优质结果。

相关性由很多因素决定,包含有用户位置,语言,设备等。
如:用户搜索自行车维修时,Google 向巴黎用户和香港用户显示的结果会不同。

创建实用、可靠、以用户为中心的内容

首先需要先对内容进行评估。

  • 是否提供原创信息、报告、研究或分析。

  • 是否提供对主题的实质性、完整性或全面性分析。

  • 是否提供了富有洞察力的深刻见解或有趣信息。

  • 借鉴了其他来源是否避免了简单的复制或改写,而是提供了实质性的额外价值或原创内容。

  • 是否避免使用了夸大其词或耸人听闻的标题。

  • 是否愿意添加为书签,分享或推荐给他人。

  • 是否能够出现在书籍中或被引用。

  • 是否与其他搜索结果更具有实质性价值。

  • 是否存在拼写或样式问题。

  • 是否制作精良而不是草率或仓促制作。

  • 是否外包给很多创作者共同创作,或已在大量网站中广泛传播,以至于个别网页没能获得同等程度的关注。

接着对于专业相关的评估

  • 是否会让用户愿意信任,如明确来源,涉及专业知识的论据,对作者或发布网站的简介等。

  • 是否在用户研究了网站后,印象会是网站深受信任或认为是相关主题权威。

  • 是否经由专家撰写内容,并经由此类人员审核。

  • 是否存在可以被轻松验证的事实错误。

侧重以用户为中心

即,内容是为用户而创建而不是为操纵搜索引擎而创建。

  • 网站是否有目标受众群体,且用户群体查看内容时会发现内容有用。

  • 是否展现了第一手的专业知识和知识深度。如,实际实用了某种产品或专业知识。

  • 是否有主要目的或关注点。

  • 是否在阅读内容后,用户会觉得了解了内容从而实现目的。

  • 是否在阅读内容后,用户会觉得满意。

避免以搜索引擎为中心

  • 是否主要为了吸引搜索引擎访问。
  • 是否只做了大量不同主题内容,并希望某些内容可以在搜索结果中获得良好效果。
  • 是否使用了广泛的自动化功能制作内容。
  • 是否主要总结他人内容而尚未增加内容。
  • 是否撰写理由仅是看起来流行而非为现有用户撰写。
  • 是否让用户觉得需要再次搜索才能获得更好信息。
  • 是否因 Google 具有首选字数统计而刻意达到字数。
  • 是否进入小众领域而不具备专业内容。
  • 是否承诺回答实际上没有答案的问题。
  • 是否在内容并未大幅度更改的情况下修改网页日期使其看起来很新。
  • 是否添加大量新内容或移除旧内容,从而让网站看起来很新使得提高搜索排名。

SEO 新手指南

确保存在 Google 索引中。

首先确保网站在 Google 索引中。

通过访问site:网站网址 来确保网站存在索引当中。

常见的不存在的原因:

  • 此网站并未与网络其他网站关联。

  • 刚推出的新网站,尚未被抓取。

  • 网站设计使得难以被抓取。

  • 在抓取时收到了错误信息。

  • 政策阻止抓取。

帮助 Google 找到内容

最好的办法就是提交站点地图。

不抓取网页

在网页根目录下放置 robots.txt会告诉搜索引擎那些网页可以抓取,那些不可以。需要注意,被 robots.txt 阻止的网页也会被抓取,因此需要使用更安全的办法保护网页。

帮助 Google 和用户了解内容

使用良好和准确的标题

为每个页面创建独特,简短且描述准确的标题,标题会影响在搜索结果中的显示标题链接和摘要。

  • 避免使用无关内容的文本。

  • 避免使用默认和模糊标题,如新增页面,无标题等。

  • 避免在多个网页中使用同一标题。

  • 避免使用毫无帮助的冗长文本。

  • 避免填充无用关键字。

使用元描述标记

元描述标记可以使得搜索引擎大致了解网页内容。
标题可以是几个词或短语。
元描述标记则可以是一两个句子或一段话。
元描述标记与标题一样,需要放置在 <head> 元素中。

...
<head>
  <meta name="description" content="this is description" />
</head>
...

元描述标记很重要,因为 Google 可能在搜索结果中将其作为网页摘要。

最好为每个网页增加不同的元描述标记。

元描述标记需要准确总结网页内容。并吸引用户。

使用小标题标记强调重要文本,如编写大纲一般,将网页内容要点次要点列出。需要谨慎使用,因为标题标记过多会导致难以确定内容主题。

  • 避免使用与网页无关的描述。

  • 避免使用宽泛说明,如这是网页等。

  • 避免仅使用关键字填写。

  • 避免将文档内容直接复制。

  • 避免所有页面使用同一标记。

  • 避免在适合 em strong 等标记处使用标题标记。

  • 避免毫无规律的使用不同长度标记。

  • 避免过度使用标题标记。

  • 避免标题过长。

  • 避免仅为文本条件样式的目的使用标题标记。

增加结构化数据标记

结构化数据是可添加到网站网页中的代码,用于向搜索引擎描述内容。

如,可以显示商品,商品价格,用户评价。那么搜索引擎会在搜索结果中摘要这些信息。

  • 避免使用无效标记。
  • 避免增加用户看不到的标记数据。
  • 避免制作虚假评价或增加无关标记。

网站层次

导航结构对于搜索引擎非常重要。

根据首页规划导航结构。

可以使用面包屑导航列表,建议同时使用面包屑导航结构化数据标记。

可以为用户创建简洁的导航页。

创建自然流畅的层次结构,避免创建复杂导航链接和过度拆分内容。

使用文字导航,避免完全以图片或动画为基础的导航,或需要以脚本为基础的事件处理。

为用户创建导航页,为搜索引擎创建站点地图,避免任由导航页内容过期,链接损坏,或只建立一个简单罗列网页而不整理。

建立实用的 404 网页,避免允许搜索引擎将 404 网页编入索引,和在 robots.txt 中阻止抓取 404 网页。避免使用模糊消息,如未找到 404等。避免 404 网页设计与其他页面不一致。

简洁网址易于传达,所以需要避免模糊路径。

网址会出现在搜索结果中,因此可以在网址中使用字词方便用户使用,避免含有非必要参数,会话 ID,通用网页名称,过多的关键字的网址。

创建简单的目录结构,避免深层嵌套子目录或使用内容无关名称。

为每个文档仅提供一种版本的访问地址,避免子域和父域访问相同内容。

了解用户需求

思考用户搜索时需要的字词,撰写简单易懂的文字,避免马虎草率,文笔欠佳,在图片和视频中嵌入文本,拼写及语法错误。

主题结构清晰明了,避免堆砌大量不同文字,不分段落,布局。

创建新鲜独特的内容,避免稍加改动,直接复制现有内容和网站到处都是重复和近似内容。

针对用户而非搜索引擎优化内容,避免大量插入针对搜索引擎的非必要关键字,含有试图访问此网页时常见的拼写错误,及用欺骗手法对用户隐藏但对搜索引擎显示的文本。

以培养用户信任为目标,彰显专业和权威性,提供适量内容阐明主题。

避免投放分散用户注意的广告和提供不足以阐明网页用途的内容。

合理使用链接

合理使用链接,选择简明扼要的描述性定位文字,设置链接格式,提高识别度,可以在内部链接使用定位文字。

避免使用宽泛文本,与主题,跳转页面内容不符文本,将网站地址作为定位文本,使用过长定位文本,使用 css 或文本样式令链接看起来像常规文本,仅为了搜索引擎而使用冗长或关键字泛滥文本,创建不利于用户导航的不必要链接。

可以使用 nofollow 让搜索引擎不追踪链接。

...
<head>
    <!-- 会让页面所有链接不被追踪 -->
    <meta name="robots" content="nofollow" />
</head>
<body>
    <!-- 仅此链接不被追踪 -->
    <a href="example.com" rel="nofollow">example</a>
    <!-- 仅此链接不被追踪 -->
    <a href="example.com" rel="ugc">example</a>
</body>
...

优化图片

使用 HTML <img><picture> 元素。

语义化有助于抓取工具找到并处理图片。使用 <picture> 可以针对不同屏幕尺寸为自适应图片指定多个选项。

还可以使用 loading="lazy" 提高网页加载速度。

避免使用 css 显示希望编入索引的图片。

使用 alt 属性,为图片进行说明,以便在未能加载图片时替代。

应该简短但具有描述性的文件和替代文本。避免宽泛名字,文件名过长,替代文本充斥关键字或复制黏贴句子。

使用图片作为链接时提供替代文本,避免撰写会认为是垃圾内容的长替代文本和网站导航仅使用图片链接。

图片站点地图可以为搜索引擎提供更多的图片有关的信息。

使用标准的图片格式,并最好让文件扩展名和文件类型匹配。

维护 SEO

确保让 Google 抓取到所有资源(图片,css 等)或网页均可供 Google 访问。

即没有被任何 robots.txt 屏蔽,并且可以被匿名用户访问。

如果网页中的重要资源被屏蔽,则可能导致 Google 无法正确抓取。

robots.txt

使用 robots.txt 可以阻止抓取内容。使用站点地图可以帮助系统抓取内容。

可以禁止 Google 抓取网站重复内容,或禁止抓取不太重要的内容。从而使得服务器接受过多请求。

不要将 robots.txt 用作一种阻止 Google 将内容编入索引的机制,应该借助 noindex 标记实现此目的。

站点地图

站点地图是非常关键的,可以告知 Google 哪些网页重要,并提供其他如更新频率在内的其他信息。

对于抓取非文本内容,如图片,视频等也很重要。

Google 不会只抓取站点地图中所列出的网页,但是会优先抓取这些网页。

迁移网页或网站

迁移单个网址,永久迁移时,请使用 301 重定向。否则暂时迁移则返回 302 告知 Google 继续抓取网页。

迁移整个网站,请实施所需的所有 301 重定向和站点地图更改。然后告知 Google 迁移情况。

遵循抓取和索引编制最佳实践

  • 确保链接可抓取

  • 对需要付费,登录的链接或不受信任的内容,使用 ref="nofollow",以免将良好的信号传递,或因它们的质量牵连。

  • 管理抓取预算,如果网站规模过大,那么 Google 可能不会经常抓取整个网站,因此,需要向 Google 指明网站上的重要的网页。

    目前的最佳机制是在站点地图中列出它们,并使用 robots.txt 隐藏不太重要的网页。

  • 遵循 Google 关于网站 JavaScript 的用法。

  • 如果文章分为多个页面,确保有供用户点击的上下页链接,并且链接是可抓取的链接。

  • Google 可能无法滚动浏览无限滚动网页,如果需要让网页可被抓取,则应该提供分页版本。

  • 禁止访问会更改状态的网址,比如可以在其中发布评论,创建账号等网页,应该使用 robots.txt 屏蔽这些网址。

  • 查看可供 Google 编入索引的文件类型的列表。

  • 少数情况下,Google 会频繁抓取网站,可以将网站的抓取速度调慢。

  • 尽量使用 HTTPS 保证网站安全。

开发者搜索指南

首先在移动设备适用性测试中测试网站。查看 Google 所看到的网站样貌,确保与用户视图保持一致。

检查链接

因为 Google 会通过抓取和解析链接,站点地图和重定向在网址间导航。

Google 会将每个网址都作为在网站上看到的第一个也是唯一一个网址来处理。

使用 Google 可抓取的 <a> 元素来保证网站所有网页都能通过其他可找到网页上的链接跳转到,并且链接包含有与目标网页相关的文字(如果是图片,则是 alt 属性)。

构建并提交站点地图,协助 Google 更智能的抓取网站。

对于单页面网站,需要确保每个屏幕或每项具体内容都有一个网址。

检查 JavaScript 使用方式

虽然 Google 能够运行 JavaScript,但设计网页和应用时需要考虑差异和限制,以适应抓取工具访问和呈现内容的方式。

更改内容时告知 Google

为确保 Google 可以快速找到新网页或更新过的网页,可以进行:

  • 提交站点地图。
  • 让 Google 重新抓取网址。

若网页仍未被编入索引,需要检查服务器日志是否有错误。

确保 Google 搜索能够理解网页主题

  • 确保视觉内容附加有文字形式说明,如衬衫图片应该有衬衫的说明文本。
  • 确保每个页面都有独特的描述性标题和元描述,从而提升搜索流量。
  • 使用语义化的 HTML,虽然 Google 会将 HTML、PDF 等编入索引,但不会将需要使用插件的内容或画布中呈现的内容编入索引。因此需要尽可能使用 HTML 标记而不是插件。

将内容的其他版本告知 Google

  • 整合重复网址
  • 将本地化版本告知 Google
  • 使 AMP 网页可以被轻松发现

控制 Google 看到的内容

可通过多种方法禁止 Google 处理内容。

  • 可以设置仅允许登录用户访问内容以禁止 Google 查找网页。
  • 创建 robots.txt 禁止 Google 抓取不需要抓取的网页。
  • 使用 noindex 标记禁止 Google 将网页编入索引,但仍允许抓取。

如果内容未显示在 Google 中,可以进行:

  • 使用网址检查工具检查 Google 能否访问网页。
  • 检查 robots.txt 查询是否在无意中禁止 Google 抓取。
  • 检查 HTML 中的 meta 是否有 noindex 标记。

抓取和编入索引

编入索引的文件类型

Google 可以将大多数文本文件和已编码文档格式的内容编入索引。

可以在 Google 搜索中使用 filetype: 运算符,将搜索结果限制为特定文件类型或扩展名。

如: filetype: rtf galway 会限制为内容含有 galway 一词的 .rtf 扩展名文件和网址。

网址结构

尽量在网址中使用易读的而非冗长的 ID 编号。

建议在网址中使用简单,说明性字词,或已本地化的字词。酌情使用 UTF-8 编码,采用特定国家地区网域,或子目录。可以使用连字符 - 。

不建议使用非 ASCII 字符,不易读的冗长的 ID 编号,下划线 _,和将字词连接。

复杂网址

对于复杂网址,特别是多个参数的网址,可能会对抓取工具带来麻烦。

对于网址过多,可能有:

  • 累加过滤一组项目,如筛选。

    如:特价、海景房、带健身中心的房源。

  • 动态生成的文档。

  • 网址参数存在问题。

  • 排序参数。

  • 网址存在不相关参数。

  • 日历问题。

  • 损坏的相对链接。

解决网址相关问题

  • 创建简单网址结构,使得合乎逻辑并特别易于人类理解。
  • 考虑使用 robots.txt 文件阻止 Google 访问有问题的网址。一般情况下应阻止动态网址。
  • 尽可能避免在网址使用会话 ID,应该考虑使用 Cookie。
  • 如果网络服务器对网址中的大小写文本处理方式相同,则应该将所有文本转换为同一大小写形式。以便 Google 可以更轻松的确定。
  • 删除不必要参数,尽可能缩短网址。
  • 存在未设置期限的日历时,为动态创建的日历页链接增加 nofollow 属性。
  • 检查网站是否存在损坏的相对链接。

规范化网址

  • 请勿使用 robots.txt 进行规范化。
  • 请勿使用网址移除工具进行规范化。
  • 请勿使用不同的规范化方法为同一网页指定不同的规范网址。
  • 不建议使用 noindex 阻止单个网站中的规范网页。因为这样会完全阻止该网页显示在 Google 搜索结果中。
  • 使用的是 hreflang 元素,务必采用同一语言的规范网页。
  • 在网站中提供链接时,需要链接到规范网址。

| 方法 | 说明 | 优点 | 缺点 |
| —————————– | ———————————————————— | ———————————————— | ———————————————————— |
| rel="canonical"link 元素 | 在所有重复网页代码中添加一个 <link>元素,使得可以指向规范网页。 | 可以映射无限多个重复网页。 | 可能增加网页大小,大型网站或网址经常改变的网站上维护比较复杂。仅适用于 HTML 网页,而不适用 PDF 等。此情况可使用 rel="canonical" http 标记头。 |
| rel="canonical" http 标记头 | 在网页响应中发送此标头。 | 不会导致网页大小增加,可以映射无限多个重复网页。 | 大型网站或网址经常改变的网站上维护比较复杂。 |
| 站点地图 | 在站点地图中指定规范网页。 | 易于维护,尤其是大型网站。 | Google 仍必须为在站点地图中声明的所有规范网页确定关联的重复网页。 |
| 重定向 | 使用重定向告知 Googlebot 重定向网址是比给定网址更佳的方法。请只在弃用重复网页时使用。 | | |
| AMP 变体 | 如果某个网页变体是 AMP 网页,则按照 AMP 指南指明规范网页和 AMP变体。 | | |

rel="canonical" link 元素

也称规范元素,指在 HTML 的 head 部分中使用。用于指明另一个网页可体现此网页上的内容。

...
<head>
    <!-- 不同网址的移动版变体 -->
    <link rel="alternate" media="only screen and (max-width: 640px)" href="https://m.example.com/" />
    <link rel="canonical" href="https://www.example.com/" />
</head>
...

Google 链接最佳实践

在确定网页的相关性和查找可抓取的新网页时,Google 会使用链接作为信号,了解如何使链接可供抓取,以便 Google 通过网页链接发现网站的其他网页。

确保链接可供抓取

一般情况下,仅当链接为含有 href 属性的 <a> HTML 元素时,Google 才会抓取。

确保 <a> 元素中的网址会解析为实际网址。

使用 JavaScript 将链接动态插入网页时,只要使用上述 HTML 标记,也可供抓取。

<!-- 推荐 -->
<a href="https://example.com"></a>
<a href="/products/category"></a>
```html
<!-- 不推荐,但是仍然会尝试解析 -->
<a routerLink="/products"></a>
<span href="https://example.com"></span>
<a onclick="goto('https://example.com')"></a>

定位文字放置方式

也叫链接文字,是链接的可见文字,将会链接到的网页相关信息告诉用户和 Google。

因此,需要将其放置在可供 Google 抓取的 <a> 元素之间。

<!-- 推荐 -->
<a href="https://example.com/example">例子</a>

<!-- 不推荐 链接文字为空 -->
<a href="https://example.com/example"></a>

如果 <a> 元素为空,那么 Google 会将 title 作为链接文字。

<a href="https://example.com/example" title="例子"></a>

如果使用图片作为链接,那么 Google 会将 alt 属性作为链接文字使用。

<a href="https://example.com/example"><img src="example.jpg" alt="例子"/></a>

如果使用 JavaScript 插入链接文字,需要确保它存在呈现的 HTML 中。

撰写定位文字

应该描述清楚,措辞简洁,且与所在网页和链接到的网页有关。

<!-- 太宽泛了 -->
<a href="https://example.com">列表</a>

<!-- 过长 -->
<a href="https://example.com">XXX企业邀请XXX当地的居民在下周周一的时候参与其盛大的开业仪式,并且还会向前三名客户赠送礼品。</a>

<!-- 太多链接相连了 -->
我<a href="https://example.com/1">今</a>
<a href="https://example.com/2">天</a>
<a href="https://example.com/3">很</a>
<a href="https://example.com/4">好</a>

<!-- 更具描述性 -->
<a href="https://example.com">商品列表</a>

<!-- 更简洁 -->
<a href="https://example.com">XXX企业邀请XXX当地的居民</a>在下周周一的时候参与其盛大的开业仪式,并且还会向前三名客户赠送礼品。

<!-- 每个链接都有背景信息 -->
谁记得<a href="https://example.com">那个</a>, 同时别忘了<a href="https://example.com">这个</a>

内部链接

加大对用于内部链接的链接文字关注,可帮助用户和 Google 更轻松的了解网页和网站其他网页,每个重视的网页都应该在网站上的至少一个页面中提供相应链接。

外部链接

合理的使用外部链接可以建立用户对网站的可信度。

...
如果有疑问,可以参阅<a href="https://example.com">这篇文章</a>
...

仅在不信任内容来源时使用 nofollow ,且不应该对所有外部链接都使用。

站点地图

是一种文件,可在其中提供网站网页,视频或其他文件有关信息,还可以说明这些内容之间的关系。

Google 等搜索引擎会读取此文件,以便更高效的抓取网站。

可以在站点地图中告诉 Google 那些网页和文件较重要,还可以提供与文件有关的重要信息。

可以使用站点地图提供与特定类型的网页内容有关的信息:

  • 站点地图视频条目可以指定视频时长,评分等。
  • 站点地图图片条目可以包含网页中所含图片位置。
  • 站点地图新闻条目可以保护报道标题和发布日期。

如果网站网页链接得当,那么 Google 通常可以能够发现其中大多数网页。

链接得当指重要的网页都可以通过某些形式导航抵达。

但站点地图仍然可以有助于 Google 抓取网站。

Google 支持由站点地图协议定义的站点地图格式。

每种站点地图都有各自的优势和不足之处。

| 类别 | 描述 | 优点 | 缺点 |
| —————— | ———————————————————— | ———————————————————— | ———————————————————— |
| XML 站点地图 | XML 站点地图是用途最广的站点地图格式,该格式易于扩展,可用于提供关于图片,视频和新闻内容的其他数据,以及本地化版本。 | 可扩展且用途广泛,可以提供有关网址的最详细信息,CMS 用户可以轻松找到用于生成站点地图的插件。 | 处理起来会很麻烦,在大型网站或网址经常改变的网站上维护映射会比较复杂 |
| RSS、MRSS、Atom1.0 | RSS、MRSS、Atom 1.0 站点地图在结构上与 XML 站点地图类似,通常是最容易提供的,因为 CMS 会自动提供。 | 大多数 CMS 会自动生成 RSS、和 Atom Feed。 可用于向 Google 提供有关视频的信息。 | 除 HTML 和其他可编入索引的网页外,只能提供视频相关信息,而不能提供图片或新闻相关信息。处理起来可能会很麻烦。 |
| 文本站点地图 | 最简单的站点地图格式,只能列出 HTML 和其他可编入索引的网页地址。 | 易于执行和维护,尤其是在大型网站上。 | 仅限 HTML 和其他可编入索引的网页。 |

需要站点地图

  • 网站很大,一般大型网站要确保每个网页都至少被另一个网页链接更为困难,因此 Google 可能发现不了某些网页。
  • 新网站且指向该网站的外部链接不多,如果没有其他网站链接到,那么 Google 可能发现不了网页。
  • 包含有大量的富媒体,如视频,图片。或显示在 Google 新闻中。Google 可能将站点地图中的其他信息纳入搜索范围。

不需要站点地图

  • 网站规模较小,指网页数不超过五百个,且都是需要被纳入搜索结果中的网页。
  • 网站已内部全部建立链接。使得 Google 可以沿着首页链接找到所有网站的重要网页。
  • 在搜索结果中显示的媒体文件或新闻网页不多,站点地图可帮助 Google 找到并了解网站上的视频和图片文件或新闻报道。

站点地图最佳做法

  • 大小限制:

    不论采用哪种格式,单个站点地图文件的未压缩的大小不能超过 50 MB。

    并且其中的网址数量不得超过 50,000 个。否则必须将站点地图进行拆分。

    也可以创建站点地图索引文件后,将索引文件提交给 Google。也可以向 Google 提交多个站点地图和站点地图索引文件。

  • 文件编码和位置:

    必须采用 UTF-8 编码,可将站点地图托管在网站任何位置。

    除非通过 Search Console 提交,否则站点地图只会影响所在目录下的子目录。

    因此,如果在根目录下发布站点地图,则会影响网站的所有文件。

  • 引用网址和属性:

    在站点地图中使用完全限定的绝对网址。Google 会严格按照所列出的网址进行抓取。

XML 站点地图

是用途最广的受支持站点地图格式。借助 Google 支持的站点地图扩展。可提供有关图片,视频和新闻内容的更多信息和网页的本地化版本。

<?xml version="1.0" encoding="UTF-8">
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
    <url>
        <loc>https://www.example.com</loc>
        <lastmod>2023-12-21</lastmod>
    </url>
</urlset>

其他说明:

  • 所有标记值必须实体转义。
  • Google 会忽略 <priority><changefreq> 值。
  • 如果 <lastmod> 值始终准确并可验证,Google 会使用。

查询 sitemaps.org 获取完整文档。

RSS、mRSS、Atom 1.0

若博客有 RSS 或 Atom Feed,则可以将该 Feed 网址作为站点地图提交。

大多数博客都能创建 Feed,但此类 Feed 只能提供近期网址信息。

其他说明:

  • Google 支持 RSS 2.0 Feed 和 Atom 1.0 Feed。
  • 可使用 mRSS(媒体 RSS)Feed 向 Google 提供网站的视频内容详情。
  • 所有标记值必须实体转义。

文本站点地图

如果站点地图只包含网址,则可以向 Google 提供简单的文本文件。

https://www.example.com/1
https://www.example.com/2

其他说明:

  • 请勿在站点地图文件中添加除网址以外的其他内容。
  • 可以随意对文件命名,但需要保证扩展名为 .txt

如何创建站点地图

创建站点地图,就是告诉搜索引擎,希望哪些网址显示在搜索结果中。这些就是规范网址。

不同网址下的搜索内容相同,选择偏好的一个加入即可,无需全部加入。

确定哪些网址加入站点地图后,可选择:

  • 让 CMS 生成。
  • 站点地图网址少于几十个,可以手动创建。
  • 站点地图网址多于几十个,则自动生成。

生成站点地图后,通过以下方式提交 Google:

  • 使用站点地图报告在 Search Console 中提交。这样可以查看 Google 何时访问了站点地图,及潜在处理错误。

  • 使用 Search Console API 程序化提交。

  • 使用 ping 工具(2023.12弃用)。

    在浏览器或命令行中发送 GET 请求,并指定站点地图网址。

    https://www.google.com/ping?sitemap=URL
    
  • 插入到 robots.txt,指定站点地图的路径。

    Sitemap: URL
    
  • 若使用的是 Atom,RSS,可使用 WebSub 向搜索引擎广播更改

跨网站提交多个网站的站点地图

可以创建一个或多个站点地图,其中包含有所有网站对于的网址。

然后将这些站点地图保存在同一位置。从而简化提交过程。

包含多个网站,网址的单个站点地图。可以包含有:

  • https://host1.com/
  • https://host2.com/

位于同一位置的多个站点地图:

  • https://host1.com/host1.xml
  • https://host1.com/host2.xml

可以使用 Search Console 跨网站提交。

也可以使用 rbots.txt 跨网站提交站点地图。

使用站点地图索引文件管理站点地图

站点地图超过大小上限,则需要进行拆分。

拆分后,可以使用站点地图索引文件同时提交多个站点地图。

XML 格式的站点地图索引文件与 XML 格式的站点地图文件非常相似。

前者由站点地图协议定义,因此,所有站点地图要求同样适用于站点地图索引文件。

引用的站点地图文件必须和站点地图索引文件在同一网站托管,如果设置跨网站提交,则免除此要求。

站点地图索引文件中引用的站点地图必须与站点地图索引文件处于同一目录或更低一级目录中。

最多可为 Search Console 中的每个网站提交五百个站点地图索引文件。

<?xml version="1.0" encoding="UTF-8">
<sitemapindex xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
    <sitemap>
        <loc>https://www.example.com/1.xml.gz</loc>
    </sitemap>
    <sitemap>
        <loc>https://www.example.com/2.xml.gz</loc>
    </sitemap>
</sitemapindex>

为确保 Google 可以使用站点地图索引,需要使用标记:

  • sitemapindex XML 父标记,包含所有其他标记。
  • sitemap 文件列出的每个站点地图付标记,是 sitemapindex 标记第一个和唯一一个直接子标记。
  • locsitemap 的第一个和唯一一个子级。一个站点地图索引文件最多包含 50,000个 loc 标记。
  • lastmod 可选的标识修改站点地图文件的时间。

robots.txt

  • 并非所有搜索引擎都支持 robtos.txt

    正规的网页抓取工具都会遵循它,但是其他抓取工具并未如此。因此应该使用其他屏蔽方法保证特定信息不被网页抓取工具抓取。

  • 不同的抓取工具会以不同的方式解析语法。

    不同的正规的抓取工具会遵循规则,但可能会以不同方式解析。

  • 其他网站有链接指向被屏蔽的网页,此网页仍可能被编入索引。

    若需要正确阻止网址出现在 Google 搜索结果中,应设置密码保护,noindex , meta 标记或彻底移除网页。

  • 必须采用 UTF-8 纯文本编码。

  • Google 通常会将robots.txt 内容最多缓存 24 小时。

编写 robots.txt

robots.txt 应该位于网站根目录下。

  • robots.txt 由一个或多个组(规则)组成。
  • 每个组由多条规则组成,每条规则各占一行。
  • 每个组都以 User-agent 开头。 并指定组适用目标。
  • 每个组包含:
  • 组使用对象(用户代理)
  • 代理可以访问的目录及文件
  • 代理不能访问的目录及文件
  • 抓取工具会按从上到下顺序处理组。一个用户代理只能匹配一个规则集。
  • 同一用户带来存在多个组,则这些组会合并。
  • 系统默认用户代理可以抓取所有未被 disallow 规则屏蔽的网页及目录。
  • 规则区分大小写。
  • # 标识注释开始。
  • sitemap 相应网站的站点地图位置。必须是完全限定的网址。
  • sitemap 外,所有规则都支持 * 通配符表示路径前后缀或整个字符串。
User-agent: Googlebot
Disallow: /nogooglebot/

User-agent: *
Allow: /

Sitemap: https://www.example.com/sitemap.xml
  • 名为 Googlebot 的用户代理不允许抓取 https://www.example.com/nogooglebot/ 开头的网址。
  • 其他所有用户均可抓取整个网站(默认情况)。
  • 网站站点地图文件路径为 https://www.example.com/sitemap.xml

谷歌 SEO 基础
http://localhost:8080/archives/acde4a4f-2c9d-4bbf-a357-e7d83291fd7a
作者
inksha
发布于
2024年09月14日
许可协议