外链质量差?站点权重低?搜索排名暴跌的真相:云运维视角下的技术根因
|
去年一月份,我蹲在IDC三号机房门口啃半冷的牛肉馅饼,雨水顺着彩钢板檐口往里淌,在防静电地板缝里积了浅浅一层,踩一脚就“吱”一声。监控屏右下角弹出第十七个503——不是负载高,是反向代理集群里有台节点把HTTP/2 Upgrade头当垃圾收了,自己悄悄降级成HTTP/1.1,还咬死不报错。运维小张叼着根没点的烟在那敲curl命令,敲到第三遍才想起来关掉proxy_buffering。我当时就想:完了,这事儿要赖到SEO头上。 结果呢?市场部晨会直接放PPT:“外链质量差”“权重掉得像跳伞”“搜索排名暴跌”,数据图红得刺眼。老板说“技术侧抓紧配合排查”。配合?配合什么?配合把robots.txt里那行Disallow: /api/ 改成Allow?还是把埋在Nginx upstream里那个写了三年、其实早该删的backup_server 10.23.44.89给划掉? 我原以为是CDN缓存策略惹的祸——毕竟去年十一月刚调过stale-while-revalidate窗口,改成了三百七十二秒。结果翻日志发现,搜索引擎爬虫根本没进CDN层。它们全卡在WAF入口,被一条误匹配的规则拦住了:body中含“?utm_”且referer非白名单域名时,自动重定向到/error/403.html。而那个error页……你猜怎么着?它返回200,还带完整HTML结构,连百度爬虫都信了这是正经页面。这事儿是我自己写的规则,三年前为防参数注入补的洞,补完就忘,直到上周小王重启WAF实例才顺手查了access.log里那一串重复的“403”后面跟着的真实status_code=200。 那天下午老齐来机房要数据看板权限,穿件灰夹克,袖口磨得发白,手里拎着保温杯,杯盖上还粘着半片茶叶。他站在我身后看了三分钟屏幕,突然问:“你们HTTPS证书续期,用的是acme.sh还是certbot?”我没答,他摆摆手,“算了,不重要。”他转身就去拍隔壁测试组的门,喊:“接口文档链接给我!我改PRD!”——可那文档链接,正是我们三个月前在nginx conf里加的rewrite,把/docs/全部302跳转到/docs-v2/,结果忘了在新路径加X-Robots-Tag: noindex。现在百度已经抓了一万三千多个/docs-v2/下的404页面,全算作有效索引。我不敢说,怕他回一句:“哦,那加个noindex不就完了?”——是啊,加,可谁动prod环境配置敢不走变更评审?评审表上写的是“优化文档访问路径”,没人写“防止SEO污染”。 还有个更滑稽的:咱们主站用了前端SSR渲染,但首页有个轮播图组件,初始化时会发个fetch请求拉运营后台的json,地址是https://admin.xxx.com/api/banner。问题在于,这个admin域根本没配SSL证书的SAN,只绑了IP。去年十二月底证书到期,Chrome一升级,fetch就静默失败,JS报错卡住后续render。首页变成纯HTML骨架,无内容,无H1,无Schema标记。搜索引擎来了,看见个空壳,还觉得“哦,这站最近改版,先少抓点”,慢慢就把快照权重挪给了镜像站——而那个镜像站,是我们为了做灾备搞的只读副本,连canonical标签都漏配了。运维小李那天值夜班,凌晨两点改了证书,但忘了同步更新Nginx里的ssl_certificate_key路径,路径里还写着old.key。所以实际上,那四十八小时,所有HTTPS请求都是靠OS自带的临时RSA密钥扛着的,证书链根本拼不全。这事我现在说起来都哑然失笑:我们拿系统级fallback救火,却亲手给SEO递刀。 对了,那天机房空调坏了,不是全坏,是左半区制冷剂泄漏,导致机柜A7-A9温升明显,温度监控告警阈值设的是28℃,实际摸上去烫手。不过这事和排名没关系,就是当时我伸手想调下风扇挡板,发现螺丝松了,拧了两圈,拧不紧。后来也没管。 我敢打包票:这次权重下跌跟外链毛关系没有。那些所谓“低质外链”,八成是同行站群互相引用时,顺手抄了咱们某个页面的旧URL,而那个URL早在半年前就被301到新地址——但我们在新页面的里,填错了,填成了老域名的子路径,又不带协议。Google一看,这canonical指向无效,干脆当没这回事,把两个页面都当独立内容处理。于是同一套内容,在三个不同URL上重复出现,算法一视同仁,全打五折。这不是运营的问题,是部署流程里缺了一环:上线checklist里压根没“canonical一致性验证”这一项。开发测完功能就交,测试只点按钮不扒源码,运维只看状态码不看响应头。优胜劣汰?是啊,淘汰的是没留痕、没闭环、没回溯能力的环节。不是淘汰外链,是淘汰那些把“反正有人兜底”当默认前提的人。
文章配图,仅供参考 上个月小王问我,能不能写个脚本自动扫全站HTML里的canonical标签,校验是否可访问、是否指向本站、是否协议一致。我说可以,但得等Q2架构治理排期。他说好。今天早上他微信发我截图,是他在家里写的Python小工具,跑通了,输出结果里标红了二十三个异常。我没点赞,回了个“收到”,然后点了右上角那个叉。有些事,你明知道它迟早会崩,但你得让它崩得慢一点,至少别崩在PRD评审会上。 老齐昨天在茶水间碰见我,递过来一张便签,上面是他手写的三行字:“banner接口超时怎么办”“首屏FCP能压到多少”“上次说的HSTS预加载列表,咱要不要加”。我接过来看了眼,没说话,塞进了工装裤后袋。雨还在下,不过机房门口那摊水,已经干了大半。 (编辑:站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |





