PAC文件包含指导网页浏览器路由HTTP、HTTPS和FTP网络流量的指令。PAC文件易于创建和维护,还能根据组织的需求定制网络流量。
PAC文件可以创建和部署以:
PAC文件主要包含JavaScript函数FindProxyForURL,带有两个参数—URL和host。浏览器根据这两个参数确定访问的代理服务器及备用代理选项。URL包含完整访问路径(例如:http://www.mydomain.com)。host参数包含主机名或IP地址。
return语句指定网页浏览器关于转发流量到代理或绕过代理的指令。例如,return "PROXY proxy1.mydomain.com:8080;"。
使用带注释的参数指定更具体的细节,如哪些主机需要通过代理访问。例如,//绕过内部主机代理。
参考以下案例创建或修改PAC文件。
案例1:通过代理服务器路由网络流量,若无法建立代理连接则建立直连:
function FindProxyForURL (url, host)
{
return "PROXY proxy.mydomain.com:8200; DIRECT";
}
案例2:直接路由内网流量(例如intranet.mydomain.com),其他请求通过代理服务器:
function FindProxyForURL(url, host)
{
if (isPlainHostName(host) || dnsDomainIs(host, "intranet.mydomain.com"))
return "DIRECT";
else
return "PROXY proxy.mydomain.com:8200; DIRECT";
}
案例3:设置代理服务器故障转移:
function FindProxyForURL(url, host)
{
//
//If they only have a specified host name, go directly.
//
if (isPlainHostName(host) || dnsDomainIs(host, ".mydomain.com"))
return "DIRECT";
else if (shExpMatch(host, "*.com"))
return "PROXY proxy2.mydomain.com:8200; " +
"PROXY proxy4.mydomain.com:8200";
else
return "PROXY proxy3.mydomain.com:8200; " +
"PROXY proxy4.mydomain.com:8200";
}
案例4:将特定IP地址重定向到代理服务器:
Case 4: To redirect specific IP addresses to a proxy server:
function FindProxyForURL(url, host)
{
if (myIpAddress() == "999.99.999.99") {
return "PROXY proxy.mydomain.com:8200";
}
else {
return "DIRECT";
}
}
案例5:根据通信协议指定代理:
function FindProxyForURL(url, host)
{
if (url.substring(0, 5) == "http:") {
return "PROXY proxy1.mydomain.com:8200";
}
else if (url.substring(0, 4) == "ftp:") {
return "PROXY proxy2.mydomain.com:8200";
}
else if (url.substring(0, 6) == "https:") {
return "PROXY proxy3.mydomain.com:8200";
}
else {
return "DIRECT";
}
}
PAC文件可以手动在浏览器设置中配置,也可以通过Web-Proxy自动发现(WPAD)协议自动配置。WPAD协议借助DHCP或DNS定位PAC文件。端点使用的浏览器启动时会搜索Web服务器以查找PAC文件位置。浏览器向本地DHCP服务器发送查询请求PAC文件位置。如果DHCP不成功,浏览器将使用DNS检测PAC文件位置。
Google Chrome、Internet Explorer和Windows版Safari在未显式设置时遵循Windows代理设置。手动输入PAC文件步骤如下:
手动配置Firefox代理设置步骤如下:
大量端点手动配置代理繁琐,推荐使用WPAD协议自动配置代理设置。
设置WPAD协议包括四个步骤:将PAC文件托管于Web服务器、设置DHCP、配置DNS设置以及实施组策略。
修改PAC文件后,将文件重命名为“wpad.dat”。在计划托管PAC文件的Web服务器上执行以下步骤:
按以下步骤确保DHCP服务器能检测到wpad.dat文件。
创建选项252条目后,执行以下步骤启用DHCP作用域选项:
使用组策略将自动代理检测推送至所有端点。配置组策略步骤如下: