IndexNow 是一种开源协议,允许网站所有者向参与的搜索引擎通报其网站上的最新更新,从而为网站所有者提供支持。 简单来说,就像发送一个快速 ping 来通知搜索引擎特定的URL及其内容已被添加、更新或删除。这不仅方便快捷,而且有助于搜索引擎显示最新信息,从而使网站所有者和用户受益。
以下是关于 IndexNow 的几个要点:
- IndexNow 协议的目的:
使网站能够在内容更改时向搜索引擎发出信号。目标简单并接地气。 - 协议的工作原理:
通过使用IndexNow协议提交 URL,网站确保搜索引擎及时了解内容更新。利人利己,双赢。 - 具体实施的步骤分为:
- 生成 API 密钥:创建 API 密钥(至少 8 个字符)以彰显对域名和网站的所有权。
- 主机 API 密钥:将 API 密钥放在网站根目录下的文本文件中。
- 提交 URL:提交单个或批量 URL,而 API 密钥的位置作为 URL 的参数。整个过程一点儿都不复杂。
- API 密钥上的主机验证:将 UTF-8 密钥文件托管在包含密钥内容的特定位置,以便于搜索引擎验证。
- 通过 HTTP 提交 URL:使用 HTTP POST 请求提交一组 URL 以及 API 密钥。技术门槛一点儿不高。
- 发送之后,会收到从搜索引擎相关服务器返回的响应代码:
- 200 Ok:URL提交成功。
- 400 错误请求:格式无效。
- 403 禁止:密钥无效。
- 422 无法处理的实体:URL 不属于主机或密钥与架构不匹配。
- 429 请求过多:潜在的垃圾骚扰信息。
- 搜索引擎像大腕,惹不起也躲不起。所以最好要规规矩矩做事:
避免发送垃圾重复 URL。
在网站内容更改后,实时提交 URL。
持续发送并不影响排名。
下面来举几个列子:
- 通过 HTTP 提交 URL:
https://<searchengine>/indexnow?url=url-changed&key=your-key
- 如果product.html页面内容更改,需要通知搜素引擎:
https://<searchengine>/indexnow?url=https://www.example.com/product.html&key=55210e3rewe5541cea58677iud0c4403a&keyLocation=https://www.example.com/55210e3rewe5541cea58677iud0c4403a.txt
通过HTTP POST JSON 请求提交多个 URL (每个请求可以发送10,000个 URL)
POST /indexnow HTTP/1.1
Content-Type: application/json; charset=utf-8
Host: <searchengine>
{
"host": "www.example.com",
"key": "55210e3rewe5541cea58677iud0c4403a",
"keyLocation": "https://www.example.com/55210e3rewe5541cea58677iud0c4403a.txt",
"urlList": [
"https://www.example.com/product-1.html",
"https://www.example.com/folder/product-2.html",
"https://www.example.com/product-3.html"
]
}
发送之后,网站老板是不是就可以高枕无忧了,非也。如果没有看到已提交的 URL 被索引,可能会气火攻心。别急,需要耐心,给搜索引擎多一些时间,或者等待获取更多抓取配额。正好利用这个时间,琢磨一下如何提高网站内容质量的大计。
差点忘了,到目前为止,Bing 和 Yandex 在积极使用 IndexNow,Seznam 正在加入,DuckDuckGo还没有动静 。Google 就不说了。