2011年10月22日星期六

定制自己的PAC文件

        第一篇文章,写点什么呢?谈谈自己是怎么来到这里的吧。

        起初用了一阵儿hosts,没想到GFW越来越厉害,魔高一尺,道高一丈,改了很多次后,终于基本不好使了= =。。。

        所以,改用基于GAE的代理翻墙,无论是wallproxy还是goagent速度都不错。美中不足的是在iPhone上使用不像桌面浏览器有插件那样方便,自带的AutoProxy.pac并不能很好的兼顾自己需要翻哪些网站。于是又开始找自己写PAC文件的方法。
        PAC文件是纯文本格式的,实际上就是JavaScript文件,基本函数譬如:

function FindProxyForURL(url, host) {
    if (shExpMatch(url, '*://*.google.com/*'))
return 'PROXY 127.0.0.1:8087';


这样就可以用goagent代理访问google.com下的全部网站,而不会反馈找不到服务器了。。

        不过,对我这样的懒人来说,JavaScript还有不少函数,让我自己一条条写,太复杂了(┬_┬)。一直都用firfox竟然没发现,chrome的Proxy SwitchySharp就可以导出.pac文件。。。⊙﹏⊙b
        这样定制自己的pac文件就方便多了。方法如下:
        1.安装chrome及扩展Proxy SwitchySharp,扩展下载地址goo.gl/fdyoa
图 1

       2.按照http://is.gd/swap2提供的方法导入gfwlist并设置代理。


图 2
 
        3.浏览自己需要通过代理访问的网站,用Proxy SwitchySharp新建规则的方式添加规则到Switch rules里,情景模式选择你的代理,如GFwed。(其实gfwlist已经很全了,不过像是google旗下的服务和flickr都没有用代理,墙内的速度令人发指啊,这也是还需自己添加的原因)
       
图 3

        4.最后在选项卡里的导入/导出中,选择导出PAC文件即可。

图 4

        因为主要是为了iPhone的apps用,尤其是Reeder获取google reader的rss,所以才一定要把*.google.com添加进PAC文件中。将保存的PAC文件放在
/Applications/MobileSafari.app下,设置无线网络HTTP代理自动,URL为
file://localhost/Applications/MobileSafari.app/你的pac文件名.pac,重启一下手机就搞定了。(必须放在MobileSafari.app下,否则safari不能识别PAC文件)
        至此就结束了,很简单的事情,让我写这么复杂 哈哈哈~~~。谈不到什么教程,没啥技术含量,就是为了便于随心所欲的翻墙(*^__^*) 嘻嘻。
        (特别鸣谢goagent的作者)
 

没有评论:

发表评论