双重301重定向被百度K站
作者:秋了秋 发表时间:2022年06月29日
在写这篇文章前我已经写了一套常规链接随机访问的自动化测试了,自动化测试对开发中的网站实在太重要了。我的网站被K,我还被蒙在鼓里一个月才发现问题所在。RT,301重定向导致的网站被K,至于我为什么这么肯定是这个原因是因为最近一个月把https换成了http了,虽然https在百度确实权重会更有优势,但是不至于http被K。我为什么用着https会换成http呢,这个有人感兴趣可以评论我会告知大家。
被K的现象是如何。关键词全掉光,在被K之前我还有几十个关键词,在一个月的时间里,直线下滑,当然不是一下就没了,而是一天一天的掉,直到掉完。期间首页会被K掉,前50页都找不到首页!百度搜索来的流量直接没了,一个都没有,基本上是直接访问的,因为之前的主要流量来源就是百度搜索。
当然单纯的301重定向是不会太大的影响权重的,因为我之前就是从http改过到https。如今要把https改回http。改的日期是2022.05.07
如今应该是过了一个半月了,至于为什么这么晚才处理,一是开始我以为是正常波动,后来才发现不对劲。二是这个原因确实不好查,不然我也不会忙着写了一套自动化测试。当然这个自动化测试并不是解决这个跳转的问题,是意识到可能会有其它潜在的bug说不定在哪天冒出来了而不自知。这次事故是因为双重301重定向。因为我从https转成http,前端访问https链接,后端代码会301重定向到http,到这一步似乎都是常规操作,后来debug发现在几个月前我还做了整站链接整改,把根路径的/xxx.html链接都重定向到/blog/xxx.html了,此时百度搜索引擎还没有彻底改过来,还是有蜘蛛访问/xxx.html,而且是https://xxx/xxx.html,所以后端会进行两次301跳转,一次是从/xxx.html跳到/blog/xxx.html通知到客户端,客户端再次访问https://xxx/blog/xxx.html,后端又告知客户端把https改成http访问,于是客户端又一次请求了一次地址,这次终于正常了,在前端页面上用户没有任何感知,但是从请求上确实产生了三次请求,前两次是301重定向,后一次才是200正常请求。
对于人来说是无伤大雅的,但是百度蜘蛛不认账,虽然其它蜘蛛都没有任何影响。这可能是百度的bug或者百度的潜规则。发现这个问题后我连夜改了相关的后端代码,让其一次性返回正确的301地址,第二天首页就慢慢呈现出在首页了,而且排名逐渐递进,每两个小时前进一名,目前已经在第二位了,恢复正常指日可待!
经常徘徊在作死的边缘才能知道什么情况会让搜索引擎降权。。这就是seo吧,以身试法!失败是成功之母,刚好最近也在读《易经》,易经的精髓是找规律,万物皆有规律,事出反常必有妖,无论生活还是工作。