谷歌爬你站是有“预算“的,别让它浪费在垃圾页上:robots、sitemap、canonical、noindex 四个开关,一次讲清怎么用
很多外贸站老板有个朴素的困惑:"我内容也写了,sitemap 也提交了,谷歌怎么还是迟迟不收录?"
他们以为,谷歌是个不知疲倦的机器人,你只要把页面放上去,它早晚会一个不漏地爬完、收进去。
但真相是:谷歌爬你的站,是有"预算"的。 它不是无限耐心,每天花在你站上的"爬取精力"是有限的。如果这份有限的精力,被一堆垃圾页面浪费掉了,你真正想被收录、想排名的页面,反而轮不到它爬。
这就解释了那个扎心的现象:写了 100 篇,谷歌只收录了 20 篇,而且收录的还不是你最想让它收录的那 20 篇。
解决的办法,就是管好"爬取预算"。而管它,靠的是四个技术开关:robots、sitemap、canonical、noindex。 这篇文章,把四个开关一次讲清,告诉你哪个该开、哪个该关。

一、先搞懂:什么是"爬取预算",为什么它会不够用
爬取预算(Crawl Budget),是谷歌官方的一个概念,意思是:谷歌愿意、也有能力花在你站上的"爬取量",是有限的。
它由两件事决定:
- 爬取速率限制:谷歌为了防止把你的服务器爬崩,会控制爬你的频率;
- 爬取需求:谷歌根据你站点的受欢迎程度、更新频率,决定"值不值得多爬你"。
💡 说白了:谷歌的爬虫不是给你一个人服务的,它有全网几十亿个网站要爬。 分到你头上的那份精力,就这么多。你站越大、垃圾页越多,这份精力被稀释得越厉害,好页面就越难被及时爬到、收录。
所以,管爬取预算的本质,是把有限的爬取精力,集中到你真正想被收录的页面上,别让垃圾页去抢。
二、第一个开关:robots.txt——"告诉谷歌,这些地方别进来"
robots.txt 是你站根目录下的一个文件,作用就一句话:告诉谷歌的爬虫,哪些路径别去爬。
它管的是"爬不爬"。比如你有一些后台页面、搜索结果页、购物车页、重复的标签页,这些页面没有排名价值,纯粹浪费爬取精力,就用 robots.txt 把它们挡在外面。
什么时候该用 robots.txt?记住这几类"该挡"的页面:
- 后台/登录/管理页(如 /admin、/wp-admin);
- 搜索结果页、筛选页(如 /search、/filter,会生成海量重复组合);
- 购物车、结算、个人中心(没排名价值);
- 站内搜出来的临时 URL、打印页 等。
⚠️ 一个关键误区:robots.txt 是"阻止爬取",不等于"阻止收录"。 如果某个页面被别的网站链接了,谷歌可能"不爬也能收"(因为它从外链知道了这页存在)。所以,想彻底不让它出现在搜索结果里,得用下面的 noindex,而不是只靠 robots.txt。
(反过来,别把 sitemap 里想收录的页面,在 robots.txt 里挡了——那等于自己打自己,谷歌想收都进不来。)
三、第二个开关:sitemap.xml——"给谷歌递一份'该爬哪'的地图"
sitemap.xml 是另一份文件,作用和 robots.txt 正好相反:robots.txt 说"别爬哪",sitemap 说"这些才是我希望你爬、收录的页面"。
它是一份你站所有想被收录的 URL 清单,主动交给谷歌,等于给爬虫递了一张地图,让它不用瞎逛,直接去你指定的地方。
sitemap 的正确用法,记住三点:
① 只放"想被收录"的页面。 别把后台页、重复页、noindex 页也塞进去,sitemap 应该是一份"干净、精选"的清单,和 robots.txt 挡掉的部分不冲突。
② 提交到 Search Console。 写好 sitemap.xml 之后,到 Google Search Console 里主动提交,让谷歌知道有这么一份地图。
③ 保持更新。 每次新增重要页面,记得更新 sitemap。很多 CMS(如 WordPress)会自动生成和更新,别手动漏了。
📊 robots.txt 和 sitemap 是一对"搭档":一个管"别爬哪"(做减法),一个管"该爬哪"(做加法)。 两个配合好,谷歌的爬取精力,就能被精准地引到你最想让它收录的页面上。
四、第三个开关:canonical——"告诉谷歌,哪个才是正主"
canonical(规范链接)解决的是另一个问题:重复内容。
你的站里,很可能同一篇内容有好几个 URL——比如:
- 带
/index.html和不带的版本; - 带
?utm_source=xxx追踪参数的版本; - 带
www和不带www的版本; - HTTP 和 HTTPS 两个版本。
谷歌看到这些,会困惑:"这几页内容一样,我到底该收录哪个、给哪个排名?" 结果,爬取精力和排名权重被分散到了几个重复页上,谁也排不好。
canonical 的作用,就是在这些重复页里,指定一个"正主"(规范版本),告诉谷歌:"这些页都是同一篇,认准这一个 URL 就行,其他都是它的副本。"
怎么用?在每个"副本页"的 HTML 里,加一行 canonical 标签,指向"正主"的 URL。
💡 它的好处是双重的:一是避免重复内容分散权重,让权重集中到正主页;二是省爬取预算——谷歌知道哪些页是副本,就不必每个都认真爬、认真收录了。一个 canonical 标签,同时解决了"权重分散"和"预算浪费"两个问题。
五、第四个开关:noindex——"告诉谷歌,这页别收录"
最后一个开关,是最直接、最"硬"的一个:noindex(不收录)。
它干的事很简单:在页面上加一个 noindex 标记,告诉谷歌"这页别收进搜索结果"。
和 robots.txt 的区别,一定要分清:
- robots.txt:阻止谷歌爬取(但外链可能让它"不爬也能收");
- noindex:阻止谷歌收录(这页彻底不进搜索结果,最彻底)。
所以,对于**"彻底不想要出现在搜索结果里"的页面**——比如感谢页、隐私政策、登录页、某些没价值的重复页——用 noindex 最干脆。
怎么加?两种方式:
① HTML 里加 meta 标签:``;
② 服务器返回头:用 X-Robots-Tag: noindex。
🔴 提醒一句使用时机:noindex 是"核武器",别乱用。 只对"确定不要被收录"的页面用;你要排名的核心页面、sitemap 里的页面,千万不能误标 noindex,否则谷歌直接把你的好页面从搜索结果里摘掉,排名瞬间没了。
写在最后
回到标题:谷歌爬你站是有"预算"的,别让它浪费在垃圾页上——robots、sitemap、canonical、noindex 四个开关,一次讲清怎么用。
这篇文章,想帮你从"谷歌为什么还不收录我"的困惑里,找到技术层面的答案。
把四个开关,压成一张速查表带走:
① robots.txt——挡后台、搜索页、购物车这些"垃圾页",告诉谷歌"别爬这";
② sitemap.xml——提交一份"想被收录的页面清单",告诉谷歌"该爬这";
③ canonical——给重复页面指定"正主",集中权重、省预算;
④ noindex——给"彻底不要的页面"贴标签,告诉谷歌"这页别收"。
谷歌的爬取精力是有限的,你的任务是让它花在刀刃上。 用 robots 挡掉垃圾、用 sitemap 指明重点、用 canonical 去重、用 noindex 剔除杂质——四个开关配合好,谷歌自然会把有限的"预算",集中到你真正想被收录、想排名的那些页面上。 很多时候,收录上不去、排名上不来,不是内容不行,是这几个开关没拧对。
DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。
更多推荐

所有评论(0)