已阅读5页,还剩4页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
/cayrus/blog/item/2800503989cad6fd14cecb50.html【转】 自动切换IE代理设置: 简单使用IE自动配置脚本因为工作需要,经常需要在家里和办公场所使用同一台电脑,由于家里不需要设置浏览器的代理,而在办公场所就需要设置。所以每次都需要修改,换WINDOWS7之前一直使用IBM版本的Access Connections(以下简称AC)来切换网络设置,很强大,很方便,但遗憾的是IBM版本的AC不支持WIN7,而ThinkpAdvantage系列的AC是有名的臭名昭著会导致开机缓慢。下了几个IP切换软件,却都少有IE代理切换功能,IPHELPER倒是提供IE代理配置,但公司网中使用的是“IE自动配置脚本”,设定了对内网访问时不使用代理,连接外网时才使用代理。无奈之下深入研究了一下这个IE自动配置脚本的原理,发现原来它就可以实现我所需要的功能(当然IP地址切换功能除外,但提供这个功能的小软件海了去了),使用IE自动配置脚本,就可以不用每次在单位和家之间手动设置IE代理了只需要加上一行代码即可(当然这行代码来之不易,其实学过计算机二级考过了C语言的童鞋们只要静下心来看一看下面的介绍,应该就对IE自动配置脚本一清二楚了)1. 什么是IE自动配置脚本IE自动配置脚本起的作用就是,当IE访问网页的时候会根据脚本文件里面界定的内容来访问。比方说,你在脚本文件里面限定了访问某些IP使用某个代理的时候,访问另外一些IP使用另外的代理,这就很方便通过脚本文件来完成。 2. 如何创建、编辑IE自动配置脚本1)创建:打开WINDOWS自带的记事本,编辑好代码后另存为“.PAC”格式2)编辑:使用WINDOWS自带的记事本即可。3. 如何编写IE自动配置脚本 最简单的格式就是包含一个叫FindProxyForURL的JScript函数,IE通过传入两个变量来调用这个函数,一个是用户浏览的地址URL全路经,一个是这个URL中的主机名部分(host)。这个FindProxyForURL函数有三种可能的字符串返回值,一是DIRECT,就是直接连接,不通过代理;二是PROXY proxyaddr:port,其中proxyaddr和port分别是代理的地址和代理的端口;三是SOCKS socksaddr:port,其中socksaddr和port分别是socks代理的地址和端口,一个自动代理文件可以是多个选择的组合,其中用分号(;)隔开,如: function FindProxyForURL(url,host) if (host = ) return DIRECT; return PROXY myproxy:80; PROXY myotherproxy:8080; DIRECT; 把以上代码另存为proxy.pac的文件,如:c:proxy.pac,然后在IE的菜单里工具-INTEL选项-连接-局域网设置-把使用自动配置脚本选上,然后在地址栏填入file:/c:/proxy.pac,注意file后是两斜杠,要使设置生效,需要关闭IE再重新打开.现在我们介绍下这个proxy.pac脚本文件,脚本的语法是js语法,js的内置函数可以使用,要实现自动配置代理,需要实现FindProxyForURL这个函数,其参数url代表要访问的连接,host代表要访问连接的主机名,该函数有三个返回参数( direct:直接连接,proxy IP:PORT,socket IP:PORT), 返回结果大小写不敏感PAC脚本另外一个重要的应用是多台代理服务器并存的情况下,通过pac脚本的控制,可以实现如下目标:使用户随机选择使用多台代理服务器中的任意一台来达到流量负载均衡的目的;使管理员通过PAC脚本控制用户使用和不使用某台代理服务器,这样可以空出时间对代理服务器进行维护;让服务器工作在主备模式,当主服务器宕机时,会自动切换到其它备用服务器而不会中断服务;根据访问目的地的不同,自动选择最佳代理服务器。下面我们介绍几个常用的PAC函数,并举便说明: 1 isPlainHostName(host),判断是否为本地主机,例如以http:/myservername/的方式访问,则是直接连接,否则使用代理 function FindProxyForURL(url, host) if (isPlainHostName(host) return DIRECT; else return PROXY proxy:80; 2 dnsDomainIs(host, )、localHostOrDomainIs(host, ),判断所访问主机是否属于某个域和某个域名,例如属于.域的主机名,和的直接连接,否则使用代理访问。 function FindProxyForURL(url, host) if (isPlainHostName(host) | dnsDomainIs(host, .) & !localHostOrDomainIs(host, ) & !localHostOrDomainIs(host, ) return DIRECT; else return PROXY proxy:80; 3 isResolvable(host),判断被访问主机名能否被解析例子演示主机名能否被dns服务器解析,如果能直接访问,否则就通过代理访问。 function FindProxyForURL(url, host) if (isResolvable(host) return DIRECT; else return PROXY proxy:80; 4 isInNet(host, , ),判断IP是否在某个子网内例子演示访问IP段的主页不使用代理。 function FindProxyForURL(url, host) if (isInNet(host, , ) return DIRECT; else return PROXY proxy:80; 5 shExpMatch(host, ),判断被访问主机名是否符合某一正则表达式本例演示根据主机域名来改变连接类型,本地主机、*.edu、*.com分别用不同的连接方式。 function FindProxyForURL(url, host) if (isPlainHostName(host) return DIRECT; else if (shExpMatch(host, *.com) return PROXY comproxy:80; else if (shExpMatch(host, *.edu) return PROXY eduproxy:80; else return PROXY proxy:80; 6 url.substring(),取URL字符串的子串本例演示根据不同的协议来选择不同的代理,http、https、ftp、gopher分别使用不同的代理。 function FindProxyForURL(url, host) if (url.substring(0, 5) = http:) return PROXY proxy:80; else if (url.substring(0, 4) = ftp:) return PROXY fproxy:80; else if (url.substring(0, 7) = gopher:) return PROXY gproxy; else if (url.substring(0, 6) = https:) return PROXY secproxy:8080; else return DIRECT; 7 dnsResolve(host),解析地址本例演示判断访问主机是否某个IP,如果是就使用代理,否则直接连接。 function FindProxyForURL(url, host) if (dnsResolve(host) = 37) return PROXY secproxy:8080; else return PROXY proxy:80; 8 myIpAddress(),返回自己的IP地址本例演示判断本地IP是否某个IP,如果是就使用代理,否则直接使用连接。 function FindProxyForURL(url, host) if (myIpAddress() = ) return PROXY proxy:80; else return DIRECT; 0) / if number of dots in host 0 return PROXY proxy:80; return DIRECT; 10 weekdayRange(),判断当前日期日否在某一星期段本例演示当前日期的范围来改变使用代理,如果是GMT时间周三到周六,使用代理连接,否则直接连接。 function FindProxyForURL(url, host) if(weekdayRange(WED, SAT, GMT) retur
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- T/CSCMA 0007-2023出口二手汽车起重机质量与价值评估
- T/UNP 371-2024智能数字化矿山领域机器人
- T/GSEE 4-202210kV配网用交流电力电缆/高压开关柜/
- T/CI 835-2024光刻胶行业绿色工厂评价规范
- T/CAEE 7-2022有机固体废物热解处理工艺评价导则
- T/CSAE 325-2023动力电池信号采集板封装热压绝缘胶膜技术条件
- 2025~2026学年甘肃省天水市麦积区北道区新阳乡胡湾小学人教版三年级上册10月月考试卷数学试卷【附答案】
- 2025-2026学年河南省登封市初中数学九年级期末下册高分预测重点试题详细参考解析
- 2025-2026学年江西省南昌市初中政治九年级期末上册点睛提升黑金试题(详细参考解析)
- Photoshop中级职业技能考试试题(含详细答案解析)
- 血液透析患者皮肤瘙痒的护理
- 《GJB 1032A-2020 电子产品环境应力筛选方法》
- 2026年邮政银行秋招试题及答案
- T/ZSA 256-2024无负极锂金属电池及电池组
- 2026年湖北省教师职称试题(综合实践活动)(附答案)
- 论固定消防设施在扑救高层建筑火灾中的应用培训课件
- 2026新教科版科学六年级上册全套分组演示实验报告(共28个实验可用下料填写实验报告单)
- 肾内科科室规章制度
- 2026中国物流行业劳动用工现状及人力资源管理优化报告
- 中小学教师小课题研究申报书模板与填写示例
- 2026年创城知识测试题及答案
评论
0/150
提交评论