用修改hosts的办法屏蔽了一些网站,这样就可以不必分心上网乱逛了。
如 127.0.0.1 news.baidu.com
也就是说ie解析时查看hosts,将news.baidu.com的链接指向127.0.0.1,从而起到屏蔽的作用。
但是发现如果浏览器挂了代理,就会绕开屏蔽,一样可以访问网站。
上网查询之后,在 http://topic.csdn.net/t/20030403/11/1613040.html 获得答案。
按照zanglan的解释:
在没有用代理的时候,本机浏览器先自己做域名解析,查看hosts。
使用了代理之后,由代理服务器来解析域名,并且发送get请求,再送到本机浏览器。
知道了这一点之后就可以解决问题了:
在代理的设置中写上例外,“不代理的地址”,将news.baidu.com写入这一栏,这样news.baidu.com不会让代理来get页面,自然就又能起到屏蔽作用了。
另外,对于windows,要让dns过滤立刻生效,需要在cmd中敲入命令:ipconfig /flushdns,即清除dns cache. mac os lion系统的命令是:dscacheutil -flushcache
更多的清除dns cache的命令参考:http://www.techiecorner.com/35/how-to-flush-dns-cache-in-linux-windows-mac/
需要说明的是hosts文件不支持通配符,需要支持通配符的可以参考 https://bbs.et8.net/bbs/showthread.php?t=1008691