做完一个网站后,我过去通常会把它部署上线,确认域名可以访问,然后就认为这件事结束了。
但最近做完「站检」后,我发现网站虽然能够正常访问,却几乎没有来自搜索引擎的流量。这让我开始思考一个以前没有认真了解的问题:
一个刚上线的网站,Google 到底是怎么知道它存在的?
网站能打开,只代表浏览器可以访问。它不代表 Google 已经发现、抓取或者收录了这个网站,更不代表网站能够获得搜索排名。
于是,我用自己刚上线的网站 zhanjianseo.site,完整走了一遍 Google 的发现和收录流程。
网站上线后,会经历什么?
为了方便理解,我暂时把整个过程分成四步:
Google 官方的划分是抓取、索引和展示搜索结果,其中页面发现可以看作抓取过程的前置环节。查看 Google 搜索工作原理
1. 发现页面
互联网上没有一份包含所有网站的登记表。Google 需要先知道某个网址存在,才有可能访问它。常见的发现方式包括:
- 从其他网页的链接中发现
- 从网站内部链接中发现
- 读取网站提交的 XML Sitemap
- 通过 Search Console 请求抓取
对于一个没有外部链接的新网站来说,Sitemap 和 Search Console 是比较直接的入口。
2. 抓取页面
发现网址后,Googlebot 可能会访问页面,下载 HTML、图片和其他资源,并运行页面中的 JavaScript。这里的关键词是“可能”。
Google 发现了网址,不代表一定会立即抓取;抓取过一次,也不代表以后会频繁访问。如果服务器无法访问,或者 robots.txt 阻止了 Googlebot,抓取就可能失败。
3. 建立索引
抓取页面以后,Google 会尝试理解页面内容:
- 这个页面主要讲什么?
- Title 和正文分别是什么?
- 页面使用什么语言?
- 它是不是另一个页面的重复版本?
- 哪个网址应该作为规范网址?
- 页面是否值得放进搜索索引?
这个过程叫作索引。被抓取不等于被收录,并不是所有处理过的页面都会进入 Google 索引。
4. 展示搜索结果
页面被收录后,当用户搜索某个问题时,Google 才会从索引中选择相关页面进行展示。
网站上线 ≠ Google 已经发现
Google 已经抓取 ≠ 页面已经收录
页面已经收录 ≠ 一定能够获得排名
获得搜索展示 ≠ 用户一定会点击
这也解释了为什么一个技术检查接近满分的网站,依然可能没有搜索流量。技术配置主要保证搜索引擎能够访问和理解页面,但最终能不能获得展示,还与搜索需求、内容质量、相关性和竞争力有关。
我为新网站做了什么?
为了观察这个过程,我开始在 zhanjianseo.site 上记录一次真实实验。
第一步:添加 Search Console
我先在 Google Search Console 中添加域名资源。Google 要求我在域名 DNS 中增加一条 TXT 记录,用来证明这个域名确实属于我。
我使用的是腾讯云 DNS,配置结构类似下面这样:
记录类型:TXT
主机记录:@
记录值:google-site-verification=……DNS 生效后,Search Console 验证成功。需要注意的是,验证域名所有权只代表我获得了这个网站在 Search Console 中的数据权限,并不等于网站已经被收录。

第二步:检查首页状态
完成验证后,我在 Search Console 的“网址检查”中输入:
https://zhanjianseo.site/这个工具可以告诉我:
- Google 是否知道这个网址
- 页面是否已经建立索引
- Google 上次何时抓取
- 抓取时是否允许建立索引
- Google 选择了哪个 Canonical
如果页面尚未收录,可以使用“请求编入索引”告诉 Google 页面已经准备好。但这只是提交请求,不是收录保证。
第三步:提交 Sitemap
站检的网站地图地址是:
https://zhanjianseo.site/sitemap.xmlSitemap 是一份提供给搜索引擎的网址清单,可以帮助 Google 发现网站中需要抓取的页面。我在 Search Console 的“Sitemap”页面中提交了它。
Sitemap 可以帮助搜索引擎发现和理解网址结构,但它不会保证页面被收录,也不会直接提高页面排名。

哪些配置可能影响收录?
在了解整个过程后,我发现技术 SEO 里的很多配置,其实分别作用在不同阶段。
robots.txt
robots.txt 用于告诉爬虫哪些路径允许或不允许抓取。如果错误地写成:
User-agent: *
Disallow: /可能会阻止 Googlebot 抓取整个网站。不过,robots.txt 主要控制抓取,不适合用来删除已经收录的页面。
noindex
页面中的 noindex 用来告诉搜索引擎不要把当前页面加入索引:
<meta name="robots" content="noindex">如果正式页面意外保留了这项配置,即使 Google 成功抓取,也可能不会收录它。
Canonical
Canonical 用于声明一组相似页面中的首选网址。如果当前页面的 Canonical 意外指向另一个页面,Google 可能会把当前页面视为重复版本,而选择收录另一个网址。
页面内容
技术配置全部正确,也不代表页面一定会被收录。如果页面内容很少、与已有页面高度重复,或者无法让搜索引擎判断它解决了什么问题,仍然可能不被收录或没有搜索展示。
怎么判断网站是否已经收录?
一种简单的方法是在 Google 中搜索:
site:zhanjianseo.site如果能看到页面,通常说明它已经进入 Google 索引。但 site:查询不一定展示全部索引数据。对于自己的网站,更准确的方式仍然是查看 Search Console 的“网址检查”和“网页索引”报告。
Search Console 还可以查看:
- Google 搜索曝光次数
- 用户使用了什么搜索词
- 哪些页面获得了展示
- 用户点击了多少次
- 平均点击率和排名
这些数据才是我后续判断 SEO 是否开始产生效果的依据。
这次实验让我理解了什么?
以前我容易把“网站能访问”和“网站有机会获得搜索流量”当成同一件事。
现在看来,中间至少隔着几个阶段:
- Google 需要先发现网址
- Googlebot 能够正常抓取页面
- Google 愿意把页面加入索引
- 页面能够匹配真实的搜索需求
- 页面在其他结果中具有竞争力
- 用户愿意点击搜索结果
Sitemap、robots.txt、Canonical、Title 和 H1 都很重要,但它们只是整个流程中的一部分。我接下来会继续观察站检在 Search Console 中的状态变化,并记录从提交到抓取、收录和产生搜索曝光分别需要多长时间。