用代理脚本 .pac 管理你的代理
用代理脚本 .pac 管理你的代理
本文打分:2.83 [2006-2-25]
我以前一般用 flock 设置代理,打不开站点,专用 flock。哎,flock 作者知道俺这么糟蹋人家的 social browser,得气疯了,也怪 flock 都是 blogger flickr 这样国外的blog工具,自定义blog 工具功能做起来又麻烦。主要是俺写 blog 一般在局域网,暂时感受不到客户端的必要性... 原因很简单,浏览器中切换代理比较麻烦。Maxthon很方便,Opera也有此功能,但有bug - 挂上代理没问题,换掉就不起作用!:(firefox 必须依托插件xyzproxy,firefox 插件对版本的挑剔令人烦不胜烦...怎么办?不想再回到 Maxthon(如果使用 gecko engine 功能完善的话,倒是不妨考虑一下...) 今天看到这个方法,不错。将下面这段保存为 proxy.pac(名字无所谓) function FindProxyForURL(url, host) { url = url.toLowerCase (); host = host.toLowerCase(); if(dnsDomainIs(host,"wikipedia.org")|| dnsDomainIs(host,"blogspot.com"|| dnsDomainIs(host,"wordpress.com") ) return "PROXY 194.247.61.6:80"; else return "DIRECT"; } 然后在浏览器的代理设置中,选择自动代理脚本。输入类似 file:///C:/proxy.pac 这样的路径即可。 注:在我测试中出现很多奇怪的问题,经常不能使用: 1.8080 端口不行?直接设置代理ip可以,.pac 代理脚本就是不行,奇怪。 2.上面那个 UK 194.247.61.6:80 代理,.pac 中 wordpress.com 不行,直接设置可以。郁闷,代理脚本的处理是不是有bug啊... 3.经常出现直接设置代理可以,而脚本不行的情况。 资料: http://www.microsoft.com/technet/prodtechnol/ie/ieak/techinfo/deploy/60/en/corpexjs.mspx 更多代理脚本: firefox中设置特定网站才使用代理 以下是/etc/privoxy/proxy.pac文件内容: function FindProxyForURL(url, host) { url = url.toLowerCase(); host = host.toLowerCase(); if(dnsDomainIs(host,".google.com")) return "PROXY localhost:8118"; else if(dnsDomainIs(host,".gmail.com")) return "PROXY localhost:8118"; else if(dnsDomainIs(host,"wikipedia.org")) return "PROXY localhost:8118"; else if(shExpMatch(url,"*q=cache:*")) return "PROXY localhost:8118"; else return "DIRECT"; } 设定访问三个域名、一个URL模式匹配的地址时,使用privoxy的代理,可以按照这个样式,随意添加更多网站。 然后在firefox的"首选项"菜单中,打开"连接设置"对话框,选择"自动代理配置URL",在后面的输入框中,填入配置文件地址,我这个就是file:///etc/privoxy/proxy.pac。 这样除了访问满足配置文件中设定条件的域名,会使用privoxy代理,其他都直接访问。以上办法,由niqiu网友提供。 --Farm (talk) 23:41 2005年10月22日 (UTC) guoshuang2006-03-10+下面转一些相关资料: 代理服务器自动配置脚本(.PAC)的网络写法综述 http://windtear.net/archives/2006/03/07/000932.html 代理服务器自动配置脚本(.PAC)的网络写法综述 今天水木新软俱乐部讨论起这个 这里就提一下自动配置脚本的配置写法 1. 网络写法 兼容性最好 如 http://proxy.ipcn.org/ipcn.pac 2. 本地文件写法 file:// IE两个/就行 firefox需要三个/ file:///c:/proxy/ipcn.pac file://c:/proxy/ipcn.pac 如果遇到不行的情况 可以在自动配置脚本ipcn.pac里面加入 alert("test"); 便于测试 3. 网上邻居写法 这个是今天讨论时想要测试确认的 file://\\192.168.1.11\pub\proxy\ipcn.pac file://\\ipcnserver2\pub\proxy\ipcn.pac 当时用ie测的 firefox 忘了测了 最后作为总结 考虑到不同操作系统不同浏览器的兼容性问题 第一种网络写法 http://proxy.ipcn.org/ipcn.pac 兼容性最好 基本支持自动配置脚本的都会支持这个 其他的如果遇到有细节上的不同 多试两把就行了 具体自动配置脚本(.PAC)的写法可以参考Netscape的官方文档 (就是一个特殊的javascript) Navigator Proxy Auto-Config File Format http://wp.netscape.com/eng/mozilla/2.0/relnotes/demo/proxy-live.html 本blog曾写过的相关文章: 其中SPS(Super Proxy Script)比较好玩 [IPCN] proxy.ipcn.org 使用设置调整公告 http://windtear.net/archives/2004/02/16/000508.html squid ipcn.pac use URLHash2 of SPS(Super Proxy Script) - remove ipcnauth http://windtear.net/archives/2004/04/28/000474.html IPCN简化设置Proxy http://windtear.net/archives/2004/05/09/000471.html 花刺代理验证(ProxyThorn) v1.5.3 使用体验 http://windtear.net/archives/2004/12/20/000529.html [IPCN] proxy.ipcn.org 允许使用访问更新 http://windtear.net/archives/2005/01/08/000549.html via http://windtear.net/archives/2006/03/07/000932.html [Edit on 2006-3-11 7:34:25 By guoshuang] |
0 评论:
发表评论