【笔记】PAC学习笔记

前言

代理自动配置(英语:Proxy auto-config,简称PAC)是一种网页浏览器技术,用于定义浏览器该如何自动选择适当的代理服务器来访问一个网址。
一个PAC文件包含一个JavaScript的函数“FindProxyForURL(url, host)”,这个函数返回一个包含一个或多个访问规则的字符串。用户代理根据这些规则使用一个特定的代理器或者直接访问,这些规则也有优先级。当使用高优先级的规则无法访问的时候,低优先级的访问规则(如果存在)就提供了备用的访问方式。浏览器在访问网页以前,会首先访问这个PAC文件。PAC文件中的URL可能是手工配置的,也可能是是通过网页的网络代理自动发现协议自动配置的。(维基百科

定义PAC文件

  • MIME类型为application/x-ns-proxy-autoconfig

url:包含端口号
host:仅域名或IP地址

proxy.pac
1
2
3
4
5
6
7
8
9
function FindProxyForURL(url, host) {
if (host == "example.com") {
return "PROXY 127.0.0.1:7890";
}
if (host == "127.0.0.1") {
return "PROXY 127.0.0.1:7890";
}
return "DIRECT";
}

返回值

DIRECT:直连
PROXY 127.0.0.1:7890:使用HTTP代理
SOCKS 127.0.0.1:7891:使用SOCKS代理
HTTP 127.0.0.1:7890:使用HTTP代理
HTTPS 127.0.0.1:7890:使用HTTPS代理
PROXY 127.0.0.1:7890; SOCKS 127.0.0.1:7891:前一个代理失效后会自动改为后一个代理
PROXY 127.0.0.1:7890; DIRECT:前一个代理失效后会自动改为直连

使用

  • 发布到服务器后,将URL填写在系统设置的自动配置代理

完成

参考文献

mozilla