自留地
切勿乱来!
     找回密码     哈林摇

网站优化使用必应IndexNow介绍

网站优化使用必应IndexNow介绍
先介绍一下Bing的IndexNow

一、IndexNow 是什么?

IndexNow 是一种由微软必应主导,与多家搜索引擎厂商共同推动的自动网站收录协议。

它允许网站在内容发生更新、新增或删除时,主动向搜索引擎推送通知,从而大幅缩短搜索引擎发现和抓取网站内容的时间。

变“被动等待蜘蛛爬取”为“主动通知收录”。

对标的就是国内搜索引擎如百度的主动推送,但是又比百度更纯粹,没有百度玩那么多权限,比如百度主动推送有:原创推送,快速推送,普通推送,大部分站长未必有前两个的权限。

二、IndexNow 的核心优势

极速收录:传统方式可能需要几小时甚至几天,IndexNow 通常在几分钟内即可通知到搜索引擎。
降低服务器负载:搜索引擎不再需要频繁、大量地爬取整个网站来寻找更新,减少对源站的带宽压力。
跨搜索引擎协作:IndexNow 是一个开放协议,理论上你只需要向一个支持该协议的搜索引擎提交,该信息会共享给其他合作搜索引擎(如 Bing、Yandex、Seznam 等)。目前必应是主要推动者。
精准控制:你可以精确指定哪些 URL 需要更新或删除。

三、IndexNow 的工作原理

生成密钥(API Key):你需要为你的网站生成一个唯一的 API 密钥(一串字符串)。
放置密钥文件:将包含该密钥的文件放置在你的网站根目录下,或通过 HTML 标签等方式进行验证,以证明你对网站的所有权。
提交 URL:当你发布新文章、修改页面或删除页面时,向 IndexNow 的 API 接口发送一个包含你的密钥、网站主机名以及需要更新的 URL 列表的请求。
搜索引擎处理:Bing 等搜索引擎收到通知后,会优先抓取这些 URL 并更新索引。

四、如何使用 Bing IndexNow

登录 Bing Webmaster Tools:https://www.bing.com/webmasters/ 添加并验证你的网站所有权。
然后打开 https://www.bing.com/indexnow/getstarted 在中间部分找到图下的Generate API Key
网站优化使用必应IndexNow介绍
然后点击Generate后,复制生成的key,右侧下载文件,放到站点根目录,链接形式为:http[s]://www.yourdomain.com/key.txt
单条推送方法(GET)
最简单的推送方法:

https://www.bing.com/indexnow?url=你需要推送的内容url&key=复制的key

拼接好地址后,在浏览器打开,就可以实现推送到IndexNow了
PHP写法如下:

<?php
/**
 * 通过GET方式推送单条URL到Bing IndexNow
 */
// ----- 配置参数 -----
$api_key = '你的IndexNow密钥';
$site_url = '你的网站域名';
$push_url = '要推送的具体URL';
$indexnow_url = "https://www.bing.com/indexnow?url={$push_url}&key={$api_key}";

// ----- 发送请求 -----
$response = file_get_contents($indexnow_url);

// ----- 处理响应 -----
if ($response !== false) {
    // 查看返回的HTTP状态码
    if (isset($http_response_header)) {
        $status_line = $http_response_header[0];
        preg_match('{HTTP\/\S*\s(\d{3})}', $status_line, $match);
        $status_code = $match[1];
        if ($status_code == 200) {
            echo "推送成功!";
        } else {
            echo "推送失败,状态码:{$status_code}";
        }
    }
} else {
    echo "推送失败,无法连接到IndexNow服务。";
}
?>

批量推送方法(POST),同样以PHP为例:

<?php
/**
 * 批量推送到必应IndexNow
 * @param $urls 数组,需要提交的内容URL
 * @param $apiKey 你的key
 * @param $host 你的网站域名
 */
function submitToBingIndexNow($urls, $apiKey, $host = null) {
    if (!$host && !empty($urls)) {
        $parsedUrl = parse_url($urls[0]);
        $host = $parsedUrl['host'] ?? '';
    }
    $endpoint = "https://www.bing.com/indexnow";
    $data = [
        'host' => $host,
        'key' => $apiKey,
        'urlList' => $urls
    ];
    $ch = curl_init();
    curl_setopt_array($ch, [
        CURLOPT_URL => $endpoint,
        CURLOPT_POST => true,
        CURLOPT_RETURNTRANSFER => true,
        CURLOPT_TIMEOUT => 30,
        CURLOPT_HTTPHEADER => [
            'Content-Type: application/json; charset=utf-8'
        ],
        CURLOPT_POSTFIELDS => json_encode($data),
        CURLOPT_USERAGENT => 'PHP-Bing-IndexNow-Client/1.0'
    ]);
    $response = curl_exec($ch);
    $httpCode = curl_getinfo($ch, CURLINFO_HTTP_CODE);
    $error = curl_error($ch);
    curl_close($ch);
    return [
        'success' => $httpCode === 200,
        'http_code' => $httpCode,
        'response' => $response,
        'error' => $error
    ];
}

// 使用示例
$apiKey = '你的Key';
$urls = [
    'https://example.com/page1.html',
    'https://example.com/page2.html',
    'https://example.com/page3.html'
];

$result = submitToBingIndexNow($urls, $apiKey, '你的域名');

if ($result['success']) {
    echo "推送成功";
} else {
    echo "推送失败: 错误代码 {$result['http_code']}\n";
    if ($result['error']) {
        echo "错误: {$result['error']}\n";
    }
}
?>

HTTP 状态码说明

IndexNow API 返回的状态码含义:
状态码 含义 处理建议
200 成功 URL已成功接收,将尽快抓取
202 已接受 请求已收到,正在处理
400 错误请求 URL格式不正确或缺少必要参数
403 禁止访问 API密钥无效或未验证网站所有权
422 无法处理 URL与主机名不匹配
429 请求过多 超出频率限制,稍后重试
5xx 服务器错误 Bing服务端问题,稍后重试

推送效果:

117.95.160.163 - - [11/Feb/2026:21:26:22 +0800] "GET /wp-admin/post.php?post=6527&action=edit&message=6 HTTP/2.0" 200 128049 "https://www.ediok.cn/wp-admin/post-new.php?wp-post-new-reload=true" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36"
52.167.144.228 - - [11/Feb/2026:21:26:45 +0800] "GET /blog/2026/02/6527.html HTTP/2.0" 200 17256 "-" "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; bingbot/2.0; +http://www.bing.com/bingbot.htm) Chrome/116.0.1938.76 Safari/537.36"

21:26:22成功发布内容,21:26:45蜘蛛来访,只用了23秒就过来抓取,速度那是杠杠的

5 收藏 打赏
×
版权声明:本文采用知识共享 署名4.0国际许可协议 [BY-NC-SA] 进行授权
文章名称:《网站优化使用必应IndexNow介绍》
文章链接:https://www.ediok.cn/blog/2026/02/6527.html
本站资源仅供个人学习交流,请于下载后24小时内删除,不允许用于商业用途,否则法律问题自行承担。
分享到

评论 抢沙发

评论前必须登录!

 

关注互联网发展前沿,关注PHPCMS技术演进,钻研PHPCMS技术开发

问答社区 联系我们
后退
Alt+←
前进
Alt+→
刷新
F5
无法复制?

登录

登录即表示同意本站用户协议隐私政策
©2026 周涛博客 All rights reserved

注册

注册即表示同意本站用户协议隐私政策
©2026 周涛博客 All rights reserved

觉得文章有用就打赏一下文章作者

非常感谢你的打赏,我们将继续给力更多优质内容,让我们一起创建更加美好的网络世界!

微信扫一扫

微信扫一扫