只有百度网站打不开
路由器就在我脚边,百度指示灯绿得好好的网站。手机连着Wi-Fi,百度刷视频、网站看新闻、百度甚至打开淘宝都秒开,网站唯独百度,百度那个熟悉的网站搜索框转了三圈,然后给我一个"无法访问此网站"。百度
我第一反应是网站百度挂了。这么大个公司,百度偶尔抽风也正常。网站但转念一想,百度不对,网站如果是百度百度服务器的问题,那应该是所有人都打不开,微博上早就炸锅了。我切到手机流量,关掉Wi-Fi,再试——百度还是打不开。这就有点意思了。
打开电脑,cmd,ping一下。四个包发出去,回来四个"请求超时"。再ping一下淘宝,通的。ping一下腾讯,通的。唯独百度,像是从互联网上被抹掉了一样。
我换了DNS。114.114.114.114,不行。8.8.8.8,还是不行。阿里DNS,照样不行。这就不是DNS污染的问题了,更像是路由层面的阻断。但谁会在自己家里阻断百度?我路由器又没设什么黑名单。
翻出手机,用流量开百度APP。能打开。搜索、新闻、甚至那个烦人的信息流,全都在。这就更奇怪了——同一个网络环境,浏览器打不开,APP能打开?
我盯着浏览器地址栏看了半天。https://www.baidu.com。没毛病。然后我试着把www去掉,只输baidu.com——还是不行。换成http,不行。加个端口,不行。
突然想到一个事。前几天我装了个广告拦截插件,规则更新得挺勤。会不会是它把百度给拦了?我禁用了插件,刷新。百度首页出来了。干干净净,连搜索框都显得有点陌生。
但事情没这么简单。我重新启用插件,百度又挂了。可之前用了一个月都没事,怎么偏偏今天出问题?我点开插件的拦截日志,一行小字:||baidu.com^$document。这条规则的意思是,把整个baidu.com当作广告域名,直接屏蔽文档加载。
这不是插件的默认规则。我翻了下规则订阅列表,发现昨天自动更新了一个第三方规则集,里面不知道哪个维护者抽风,把百度整个域给拉黑了。可能是个误操作,也可能是什么"净化中文互联网"的激进策略——反正结果就是,我成了那个倒霉蛋。
更讽刺的是,百度APP能打开,是因为它走的是自家私有协议,根本不经过浏览器,插件管不着。而浏览器里所有百度相关的页面,全被那条规则一锅端了。
我删掉那条订阅,清了缓存,百度回来了。搜索框里那个"百度一下"的按钮,头一回看着还挺亲切。
这事要搁以前,我肯定先怀疑网络、怀疑运营商、怀疑百度服务器。但现在,一个藏在浏览器角落里的规则列表,就能让整个百度从你眼前消失。你甚至不会收到任何提示,就是转圈,然后"无法访问"。
第二天我跟同事聊起这事,他说他也遇到过。不过不是百度,是知乎。同样是插件规则误杀,同样是折腾半天才找到原因。我们俩对着笑了一下——现在上网,你得同时懂网络、懂DNS、懂浏览器、还得懂那些你根本不知道什么时候装上的插件规则。少一样,你就只能对着"无法访问"发呆。
百度到底做错了什么?什么也没做。它只是被一条不知道谁写的规则,在某个你没注意的瞬间,从你的互联网里划掉了。