Chrome代理设置真烦人,寻内置代理服务器调度+快速切换的工具 九月 1st, 2009
文章较长,想找这样工具的朋友,可直接查看Kder自己写的小软件PyProxySwitch。
起因
如题。
经过
这个方法可以设置Chrome的代理,但是不能方便地切换代理:以如下参数启动Google chrome可以使其不使用IE的代理设置,X是我自定义的路径
"X:\Program Files\Chrome\Application\chrome.exe" --user-data-dir="X:\User Data" --proxy-server=127.0.0.1:8080
为了给我所有的网络程序找一个公用的快速切换代理的软件,我搜啊搜…… 关键词:代理级联·二次代理·二级代理·本地代理服务器调度·代理调度软件;内置服务器·代理转发·intercept Proxy……
要解决这个问题,我有几个选择:
1、搜索;2 、求助; 3、自己写【见下文:PyProxySwitch】
首先是搜索,搜到了好多:
ProxySwitcherLite 不支持 Internal Proxy
Proxy Switch —— 类似 Multiproxy,自动化,不能手动切换
一键切换+本地服务器调度 ProxySwitcher正是我想要的,可惜是收费的的软件……
代理猎手 —— 切换、调度不方便……
代理超人——切换有些不便
httport
Flos HTTP Proxy
proxyExpert——切换不方便
Webscarab——不方便,不能切换
Multiproxy —— 不能手动切换
Privoxy —— 不能手动切换
jproxychain,sockschain
……FreeCap
TCP2HTTP
还有几款不错的 共享代理软件:CCproxy、 SuperProxy、 Foxy MyProxy、 Proxycap和ProxySwitch。
以上软件Kder都试用了一下,免费软件中只有代理超人比较符和需要。代理专家也可以,就是切换只支持IE。
—————————————————————————————————
选来选去,还是ProxySwitcher最好(可惜是收费的~),代理超人勉强可以,花刺代理也可以,就是没有内置服务器;
功能需求和架构实现
我所想的(如果我自己写的话)内置服务器调度+快速切换的工具,其实对于我来说实用性应该算最强的:
1.多应用程序支持,不仅是浏览器
2.统一接口,都设置成本机的端口,只管切换就行了
而曾考虑过的另一种方法,切换工具(ProxySwitcher、花刺等等)+ 端口转发工具(TCP2HTTP、 HTTPort等等)的组合,可分析一下,实用性不强:
1.多应用程序支持问题:如何实现?切换工具不断切换本机端口,而应用程序不能及时响应,通过pac脚本的话,有些程序又不支持
2.接口不统一:只能实现修改IE的代理配置(有些程序又不支持)或者修改一个pac文件,而不是统一的端口
要实现统一接口或者实时响应,一个可用的解决方案是:在切换软件切换代理后,以一个中间组件判断更改为哪个地址,然后将地址作为参数传递给 端口转发软件,使其本地监听端口不变,只更改向外转发的地址和端口,然后重新加载
以上这个实现似乎不难,用花刺的pac就可以,我试了,自建一个http server,将花刺 的pac设置好路径,三个浏览器就都支持了!
但统一接口实现了,快速切换又成问题了:pac定了,要快速切换就要能修改pac内容。花刺的做法是根据一个模板生成文件然后覆盖,在修改注册表里的pac位置(这个默认就是file协议,改成http后每换一次就会改回去,挺烦的),似乎很麻烦:需要http服务器+动态修改。动态修改可以调用命令模式的文本编辑器修改,或者事先写好几个pac文件,需要哪个就把那覆盖掉目标文件(这个似乎简单点),以后考虑一下。
结果
符合以上两个要求的软件我已经找到了,叫 Proxy Switch【注意不是ProxySwitcher,也不是Google、百度搜出来的ProxySwitch,是在sourceforge里的开源项目叫 ProxySwitch,下载下的文件名叫做pProxySwitch.exe,Google搜索只有一个结果】界面居然是波兰语的~ 好在有Google翻译,我把它不完全【英化】了一下,没敢汉化,怕不支持中文~ 需要的朋友可以给我留言,也可以直接点此下载http://www.ziddu.com/download/6543942/PProxySwitch.zip.html 花了两天时间,问题终于解决了,我为此险些冲动的要去自己写一个Proxy Switcher…… 好了,好好用我从sf上淘来的ps吧,抽时间研究研究他的源代码,自己做一个,呵呵~
自己动手,丰衣足食
最近Kder还真的写了个符合以上要求的软件:PyProxySwitch,一个用Python写的代理切换程序,可以为Chrome、Firefox或者其他的网络程序切换代理设置,自用感觉效果不错,目前正在完善中,详情见http://www.kder.info/pyproxyswitch。
转载请注明:作者:Kder [ http://www.kder.info/] 出处:http://www.kder.info/chrome-proxy-switcher.html
更新2:2010年8月9日
更新1:2009年9月20日
初稿于2008-11-16 22:51
不错,挺详细的