最近一直都被电信的流氓行为所困扰,不管打开什么网站浏览器都会向221.232.161.106这个地址发出请求,开始还以为是电脑中毒了呢,后来一查才知道是电信的IP,查看网页的源代码时发现只有寥寥几行,一个偌大的网站怎么会只有几行代码,这才意识到网页被电信劫持并框架了,google了下发现各地都有这种情况,电信这样做是为了推送广告。这个大概与DNS劫持还不同,因为我换用OpenDNS也不能解决问题,据说是路由器劫持什么的,反正很令人厌恶,每次网站装载后都不能正确显示标题,必须反复刷新才行;更重要的是电信在未经用户允许的情况下这样做显得比较龌龊,无怪乎网友们都对大佬电信怨声载道呢!

     在网上搜了一圈,找到一些规避这种流氓行为的方法,诸如什么屏蔽IP、修改host文件等,不幸的是都不管用。 不过我发现一个有趣的现象,有些网站从来不会被框架,比如我的博客,就从来没有出现这种情况,事有蹊跷,随即查看源代码,结果发现“凶手”竟是一行很简单的JS代码:

if (top.location != self.location) {top.location=self.location;}
      这就是传说中防止iframe的代码,如果把这行代码应用到所有的网站上不就都解决了吗,呵呵,我几乎马上想到了Greasemonkey,只需在Greasemonkey里新建一个脚本,把上面的代码填入,然后把脚本应用的网页修改为http://* 就可以了,这就表示应用到所有网页上了。不过有的时会遇到该脚本与网站其他脚本冲突的情况或者网页还中还嵌入了其他的iframe元素(比如blogspot,还有blogbus的后台等),这样的话只需在Greasemonkey中把相应的网站添加到例外中即可。
      俺自己也照样写了个, 有需要的可以直接下载该js回去按上,不过我总觉得这个脚本忒简陋,应该可以写的更好以避免各种冲突。

       firefox 3.0 RC1版已经释出,早就按耐不住想用的心情了,不过兼容新版的扩展实在有限,虽然修改配置文件可以让不兼容的扩展安装上,但毕竟不兼容,其功能上还是有问题,比如firebug就不能实时高亮显示代码在页面中的位置,所以还需要firefox 2.0 。但如果系统里同时安装2.0和3.0就会出现两个版本的软件共用一个配置文件的情况,就是这个路径:

        C:\Documents and Settings\用户名\Application Data\Mozilla\Firefox\Profiles\xxxxxxxx.default

       虽无大碍但缺乏独立性可能导致一些配置的混乱,于是google了一下,发现可以通过快捷方式“firefox.exe -p"启动配置文件管理器,启动后会提示新建新的用户配置文件,也就是修改profiles.ini这个文件,位于该路径下:

       C:\Documents and Settings\用户名\Application Data\Mozilla\Firefox

       随即为2.0和3.0分别建立了配置文件分别命名为ff2和ff3,并指定不同的配置文件路径,比如:

       ff2:E:\Program Files\Mozilla Firefox\proflie

       ff3:E:\Program Files\Firefox 3.0\userprofile

       然后分别为两个版本的firefox创建快捷方式并在属性里分别加相应的上参数,得到这样的快捷方式:

        "firefox.exe -p ff2""firefox.exe -p ff3"

        这样一来每次以相应的快捷方式启动火狐就会加载各自相应的配置文件了,为了保持firefox 2.0还能使用原来的配置,可以把原来默认路径下的配置文件全部复制到ff2的配置路径下覆盖,这样原来firefox 2.0的所有配置包括书签、扩展、设置等都能继续使用了。

       以上方法虽可以解决配置不独立的问题,但还不尽完美,因为每次firefox启动都要先读取配置管理器位于C盘的配置文件profiles.ini。这样的问题是如果系统重装,这个配置文件就没救了,firefox可能会找不到配置,我必须重新定义,为了让firefox更绿色完全可以用一下这个更彻底的方式:

      在firefox的快捷方式属性里直接加上profile参数并定义配置文件路径而免于读取profiles.ini,修改如下,

      firefox 3.0:"E:\Program Files\Firefox 3.0\firefox.exe" -profile "E:\Program Files\Firefox 3.0\userprofile"

      firefox 2.0 : "E:\Program Files\Mozilla Firefox\firefox.exe" -profile "E:\Program Files\Mozilla Firefox\proflie"

       这样只要每次以快捷方式启动就可以完美解决两只狐狸打架的问题了。

 
 
 
 
    windows环境下有太多优秀的软件了,而多数都不是跨平台的,不过有了wine就有可能让它们在linux下运行起来。ubuntu 8.04默认安装了最新的firefox 3.0beta浏览器,但很多扩展还无法安装在新版本上,如果我想回到原来的版本我就可以用wine直接运行安装在windows下的firefox 2.0,这样两个不同版本的浏览器就同时运行在了一个操作系统里,很有趣哦,要知道在windows下是不可能同时运行两个版本的firefox。狐狸兄弟居然在这里团聚了,呵呵~
返回顶部