站内搜索 404 这种小事,比你想的更影响收录

· 资讯 · 阅读 20
摘要

我以前特别不在意这种小事。站内搜索点进去 404,标签页打不开,翻页出现死链,我心里想的是:用户又不常点这些,修它干嘛。 直到有次做抓取诊断,我才发现问题的严重性。百度蜘蛛每天来抓的页面里,有相当一部分是从这些入口爬进去的,爬到的却是 4

我以前特别不在意这种小事。

站内搜索点进去 404。标签页打不开。翻页出现死链。

我心里想的是:用户又不常点这些,修它干嘛。

直到有次做抓取诊断,我才发现问题的严重性。

百度蜘蛛每天来抓的页面里,有相当一部分是从这些入口爬进去的。爬到的,却是 404。

蜘蛛的耐心有限。它来一次,抓到的全是空页面,下次来的频率就会降。这机制不难理解。换你是蜘蛛,你也愿意去那些每次都有收获的地方。

我是怎么发现的

在百度搜索资源平台的「抓取异常」里。有一栏叫「抓取失败」,按返回码分类。

404 占了绝大多数。数量比正常页面还多。

点进去看具体 URL,大部分是这几类:站内搜索的结果页、标签页、分类翻页,还有带参数的筛选链接。

这些东西在我眼里是「功能」。在蜘蛛眼里是「入口」。而 404 的时候,它们是「死路」。

为什么站内搜索会 404

以 Z-Blog 为例。站内搜索默认地址是 search.php,或者带参数的形式。

如果你开了伪静态,规则里没给搜索页配上对应的重写,那 /search.html 这种地址就会 404。

这本身不影响功能。用户点搜索框,走的还是原来那个能用的地址。

但只要页面上有链接指向了 /search.html,或者蜘蛛在别处发现了这个地址,它就会去抓。然后撞墙。

更麻烦的是,很多主题会在页面里生成各种搜索相关链接。热门搜索。相关搜索。

这些链接一旦指向 404,等于主动给蜘蛛挖坑。

死链的影响比想象的大

单个 404 不算什么。搜索引擎能理解。

但如果你站里 404 数量多、比例高,性质就变了。

它会认为这个站维护得不好,或者结构混乱。这两种印象,都会拉低整站信任分。

信任分一低,收录自然就慢。

而且这个过程是隐性的。

你不会收到任何通知。只会在某天发现,怎么最近收录不动了。然后到处找原因。找不到。

我现在的处理方式

第一,把所有会产生 404 的入口,要么修好,要么挡掉。

能修的修。比如给站内搜索补上伪静态规则。修不了又没价值的,比如带一堆参数的筛选链接,直接在 robots.txt 里 Disallow,别让蜘蛛进来。

第二,定期看抓取异常。花不了一分钟。但能提前发现问题。看到 404 数量突然上涨,马上去查是哪个入口引起的。

第三,站内链接只用确定的、能打开的地址。

写文章做内链的时候,我会挨个点一遍。确认链接是活的。这个习惯救过我几次。

说句实在话

这类问题,技术上一点都不难。难的是你有没有意识到它重要。

我见过太多人,把精力全花在怎么写标题、怎么堆关键词上,却对自己站里一堆打不开的链接视而不见。

前者是锦上添花。后者是基础。

基础不牢,花绣得再好也没用。

如果你现在正卡在收录上,别急着改内容。先花十分钟,把站内所有入口点一遍,看看有多少是打不开的。

这个动作,可能比写十篇文章更有用。