关于Google网站被baidu"劫持"的问题
2009年12月12日
由于公司的电脑不能直接上网,要想查资料需要去专门上网的公用机上才行。
这几天发现在公用机的IE浏览器上输入Google的主页时,打开的页面却是baidu的页面,但在同一机器上的Google Chrome浏览器却没有出现同样的问题。这时大家都认为Google网站被”baidu”劫持了。
出现这种输入一个网址却出现另一个网址网页的现象的原因一般来说只有一个,那就是修改了C:\windows\system32\drivers\etc\hosts文件。修改成了类似如下的记录:
xxx.xxx.xxx.xxx www.google.com xxx.xxx.xxx.xxx www.google.cn |
这样IE浏览器在发送网址请求时,会先去检查这个hosts文件,如果发现了相应的网址被指定到一个具体IP地址,那么它不再去解析DNS来获取真正的地址,而是直接使用hosts中指定的IP地址,于是就会出现了”劫持”现象,即输入一个网址却出现另一个网址网页的现象。
那么为什么Google Chrome浏览器为什么不会出现”劫持”的现象呢?应该是Chrome浏览器根本不会去检查什么hosts文件,而是直接请求DNS解析,这样一定不会错的。
这样现象在Linux系统上的Firefox浏览器也会出现。Linux系统上的hosts文件位于/etc/hosts。不管在Windows上还是在Linux上遇到这样的现象,大家还是先去看一下hosts文件是否被修改,说不好还真能解决问题。