前几天把浏览器升级了,嘛,总要与时俱进。
Opera 10.70 build 9053 是我去年用得最久的版本,一直以来也挺满意。
本来打算在 Barracuda 出来前用一小段时间 11 的,但要更新的时候刚好 11.10 就出来了,于是就跳了。。。
以前发过的 Opera 代理菜单和按钮,很多人反映部分命令在 11 下失效了。
趁此机会更新下,并综合了来自其他高手的改进。
本文只是给出方案和配置,不提供任何相关工具和网址。
Opera 代理解决方案介绍
这次改得比较多,我就罗嗦点。再整个介绍一次主要代理方案。
效果预览
先放一张预览和示意图:
需求分析
有三种模式:
- 禁用代理,Direct mode,也就是直连。
- 自动代理,Auto proxy mode 用的 PAC,只对符合名单内的规则使用代理。
- 全局代理,Global proxy mode,网络请求都通过代理访问。这个状态又有多种 IP 和端口等。
注:这里的全局不是系统全局,而是整个浏览器程序,如此称呼是为了方便表达。
一般情况下,我们的需求是:
- 平时用自动代理,遇到列表之外的网站,根据是否会再次访问选择加入代理列表 or 临时使用全局代理。
- 在全局代理的时候可以方便的切换端口,并且对一些常去的国内站点进行忽略。
- 当我们完全不需要代理或者进行一些测试排查的时候。
代理方案组成
这套代理方案包含以下部分:
- 代理按钮:能显示三种不同的模式和10种常见代理端口。点击在“禁用代理 / 启用上一次使用的代理方式”之间进行一键切换。
- 代理切换菜单:这个菜单会方便你在三种状态和多个代理端口之间进行快速切换,还有允许代理工具、添加 PAC 规则、例外列表,以及二级菜单中的其他功能。
- 图标包:对应的菜单条目和代理状态、端口一目了然。
- Pac 文件:用 PAC 来实现各种浏览器通用的自动代理,比起 override.ini 的方法强太多了。
Opera 代理菜单和按钮的改进
事实上我本来打算修复 11 以上版本无法使用的问题后,只是加上自己这段时间的做出的小调整。
但发现悲伤的采购做出了几个重量级的改进,相当让人佩服。详情见:另一个代理菜单和按钮
于是就把那些也综合进来了,那么现在这个比起以前的菜单和按钮主要改进有:
- 在命令之间添加了延迟,现在能在 Opera 11 以上版本正常工作。
- 不常用的代理端口切换放在了二级菜单下,添加了一些代理设置的二级菜单。
- 现在的方案中只需要一个 PAC 文件即可,便于维护。并能自动修正 PAC 路径。
- 重新做了一套代理图标,提取自 Opera 11 的皮肤包和各种相关工具,大小统一为 22×22。
- 新增“添加站点到自动代理规则”(在 PAC 中快速添加规则)和“添加站点到例外列表”这两个强大的命令。
- 精简部分代码,简化菜单条目。提供多种执行方式可供选择。
其中,“在“禁用代理 / 启用上一次使用的代理方式”之间进行一键切换”、“修复 PAC 文件路径”和后面那个“添加站点到例外列表”命令来自采儿。
感谢采儿~,我们就不用多说什么了。
“添加站点到 PAC”,方法来自:在PAC中快捷添加当前网站的规则
不过和原文提供的代码有不同之处:
- 生成规则和加入规则合并为一个命令,因为现在只需要一个 pac 文件嘛。
- 不需要在弹出窗口中修改规则(不直观),跳过了手动全选和复制的操作。
- 加入规则并应用更改后源代码页不自动关闭,新增规则位于 pac 顶部,方便确认和修改。
- 无需修改 operaprefs.ini 文件(用了取巧的方法 XD)。
配置 Opera 自动代理切换方案
添加代理按钮
在同样的思路下,有四种不同的实现方式。请根据你的情况和需求选择其一。
- Quick Proxy 弹出新标签的方式,这是我们常见的方式,比起传统的对话框命令体验要好些。
建议勾选“在当前标签页旁打开新标签”,这样执行完命令就不会转到其他标签去了。 - Quick Proxy 隐身标签方式,比起前面一种的优势在于:执行完命令之后不会在“已关闭的标签”中留下记录。但仅适用于 Opera 10.50 以上版本。
- Quick Proxy 后台窗口方式,通过新窗口并最小化执行的方式,来自采儿的主意,体验挺好。
就是按太快的话比起前两种更加杯具- -,关闭窗口比起关闭标签来得麻烦嘛。 - Quick Proxy 隐身窗口方式,就是方式3的无痕版,但似乎反应有点慢。同样仅适用于 Opera 10.50 以上版本。
添加代理菜单
编辑菜单配置文件,在最后添加以下代码。
主菜单,点击展开
你需要修改两处外部代理工具的路径(蓝色标注),非必需,只是影响到运行代理工具。绝对路径和相对路径均可,A.shun 这里用的是相对路径。
还有一处 PAC 文件路径(红色),这是为了速度,而且添加和编辑规则才会用到,所以就直接用绝对路径。
二级菜单 1:更多设置
需要修改一处 PAC 文件路径(红色标注),影响“手动编辑 PAC”功能。
二级菜单 2:更多端口
菜单和按钮命令都是一样的,有4种不同的执行方式。
这里限于篇幅问题,给出的代码是通用性最强的第一种方式。(不折腾的话直接跳到下一段)
你可以把代码中的:Open url in new page
批量替换为下面的:(分别对应三种方式)New private page & Go to page
New browser window & Minimize window & Go to page
New private browser window & Minimize window & Go to page
配置 PAC 文件
PAC 文件是个好东西,你可以在网上下载到,但这里还是建议你自己维护一个。
加上常去的几个站点即可,简单快速。而且 PAC 是各种浏览器通用的,全部浏览器指向同一个 PAC,这点很方便。
当然,网上的 list 对不喜欢折腾的人真的很方便,但由于 Opera 10.50+ 某个长期未修复的 bug,啊咧。。。
好吧,这里给出一种感觉不错的 PAC 写法。
(要使用菜单中的“添加到自动代理规则”必须配合 pac 的内容进行修改,用我这种语法的话就不用改了。)
如何修改就看里面的注释吧。
点此获取 PAC 文件写法
OK,把上面代码复制出来,保存为 pac.txt (嗯,没有看错,后缀不一定要用 pac,用 txt 是为了方便编辑。)
放到 profile\tools\ 文件夹下,没有则新建一个。
当然,这种写法还是需要自己做确认,可以适当添加点和斜杠进行优化。其他 PAC 写法自己去网上搜索吧。
注意:主菜单绿色标注的 Next line & Next line & Next line 表示在 pac 文件的第三行中粘贴新规则,根据 PAC 文件的不同做适当修改。
给 Opera 代理按钮和菜单添加图标
先下载这个图标包(17.2kb,内有17枚)。 Google code | OC 附件
把解压后的 proxy 文件夹放到你当前使用的皮肤里面。
并编辑皮肤包中的 skin.ini,在 [Image] 段的后面添加以下代码。
点此获取代理图标的代码
当然,如果你经常换皮肤,那么建议你修改 opera/skin 里的 standard_skin.zip。
注意事项
- 修改菜单时,要注意保存为 UTF-8 无 BOM 格式,否则会乱码。
- 在保存 skin 之前,要先关闭 Opera。
- 如果部分命令无法正常工作,请尝试加大延迟,修改 Delay, 后面的数字。
- 如果启动代理工具时提示“此扩展名未注册应用程序”,那么请检查外部程序路径。
累,贴代码和按钮真是体力活 – -
我已经尽可能详细的说明了,但是要完全不动手,类似 autoproxy 和 Proxy Switchy 之类一键安装的扩展,那目前没有。
更新:
2011.02.24 夜,初稿
2011.02.25 上午,移除菜单中一个不必要的条目,文章细微调整
容我再罗嗦几句,按钮和菜单是比较直观和便于分享的形式,但不仅限于此,你完全可以把每个动作改用快捷键或手势来执行,这也是 Opera的魅力。(当然,按钮才能显示这些状态)
还有,最近把 Gravatar 头像也换成和 Twitter (@ashunyi)上一样了,欢迎围观。用头像缓存的同学帮我更新一下吧 ,普遍表示不想换- -,好吧,我可能会改评论邮箱,以前就保持原样吧。
» 转载请以超链接形式注明来源:A.shun Blog » 《Opera 自动代理解决方案和代理菜单》
» 本文链接地址:http://www.a-shun.com/archives/21451.html
—————————————————————————————————————————
需要翻墙利器? 请安装Wuala,查找和添加gfwblog为好友,就可高速下载翻墙软件,或访问http://tinyurl.com/gfwblog直接下载。
推特用户请点击这里免翻墙上推特
请点击这里下载翻墙软件
更多翻墙方法请发电邮(最好用Gmail)到:fanqiang70ma@gmail.com
请阅读和关注中国数字时代、翻墙技术博客GFW BLOG(免翻墙)
--
Posted By GFW BLOG 功夫网与翻墙 to GFW BLOG(功夫网与翻墙) at 6/09/2011 09:12:00 PM --
1、我们的订阅地址:http://feeds2.feedburner.com/chinagfwblog。2、发一封标题为GFW的邮件到fanqiang70ma@gmail.com,就可获取翻墙利器赛风新地址。附《数字时代》赠阅版。3、本站热烈欢迎各位朋友投稿或推荐文章,请发邮件至chinagfwblog[at]gmail.com。
停止订阅,请发邮件到
gfw-blog+unsubscribe@googlegroups.com
没有评论:
发表评论