代理上网有两种模式,一种是全局代理,所有的流量都走代理服务器,另一种是自动代理,根据规则决定是否使用代理。设置自动代理可以实现智能分流,多个代理服务器同时使用。实现自动代理的方案有多种,浏览器可以使用SwitchyOmega插件,安装Privoxy实现动态代理。本章使用的是PAC自动代理脚本,主要是因为它跨平台,无需安装第三方软件或插件,几乎所有的系统都支持。PAC代理脚本使用JavaScript语法,当系统设置PAC代理脚本后,浏览器执行请求时会先从脚本中的FindProxyForURL方法中获取代理服务器。functionFindProxyForURL(url,host){return"代理服务器";}参数说明:url前当请求的url,如:host当前url中的主机名,如:返回值说明:DIRECT不使用代理,示例:”DIRECT”PROXY使用http代理,示例:”PROXY127.0.0.1:8888″SOCKS使用socks代理,示例:”SOCKS127.0.0.1:1080″SOCKS5使用socks5代理,示例:”SOCKS5127.0.0.1:1080″可以同时返回多个代理设置,用分号分隔,应用会依次按顺序检查返回一个可使用的代理服务器。示例:”SOCKS5127.0.0.1:1080;PROXY127.0.0.1:8888;DIRECT”优先使用socks5代理,如果不可用则使用http代理,如果http代理也不可用则跳过代理直接连接。内置函数PAC脚本支持基本的JavaScript语法,同时还内置一些函数可以帮助我们简化处理