帮助文档

代理自动配置 (PAC) 文件

PAC文件包含指导网页浏览器路由HTTP、HTTPS和FTP网络流量的指令。PAC文件易于创建和维护,还能根据组织的需求定制网络流量。

PAC文件的不同使用方式

PAC文件可以创建和部署以:

  1. 通过精确的代理配置或直接将网络流量路由到互联网。
  2. 为特定网络流量请求设置代理例外。
  3. 设置代理故障转移以确保持续访问互联网。
  4. 在不同代理服务器之间平衡网络流量负载。

如何创建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文件

PAC文件可以手动在浏览器设置中配置,也可以通过Web-Proxy自动发现(WPAD)协议自动配置。WPAD协议借助DHCP或DNS定位PAC文件。端点使用的浏览器启动时会搜索Web服务器以查找PAC文件位置。浏览器向本地DHCP服务器发送查询请求PAC文件位置。如果DHCP不成功,浏览器将使用DNS检测PAC文件位置。

在网页浏览器中手动配置PAC文件

Google Chrome、Internet Explorer和Windows版Safari在未显式设置时遵循Windows代理设置。手动输入PAC文件步骤如下:

  • 进入“开始 > 设置 > 代理”。
  • 关闭“自动检测设置”选项。
  • 开启“使用设置脚本”并输入PAC文件地址。
  • 点击“保存”。

手动配置Firefox代理设置步骤如下:

  • 浏览器中进入“工具 > 选项”。
  • 点击“高级”,在“连接”下选择“设置”。
  • 选择“自动检测此网络的代理设置”。
  • 点击“确定”。

大量端点手动配置代理繁琐,推荐使用WPAD协议自动配置代理设置。

如何设置WPAD

设置WPAD协议包括四个步骤:将PAC文件托管于Web服务器、设置DHCP、配置DNS设置以及实施组策略。

注意:Opera不支持WPAD协议。

1. 在Web服务器上托管PAC文件

修改PAC文件后,将文件重命名为“wpad.dat”。在计划托管PAC文件的Web服务器上执行以下步骤:

  • 登录Web服务器。
  • 进入“控制面板 > 系统和安全 > 管理工具 > Internet信息服务(IIS)管理器”。
  • 展开服务器名称,右键点击域名,选择“属性”。
  • 进入“HTTP头”选项卡,点击“MIME类型”,然后点击“新建”。
  • 输入信息-扩展名:.dat,MIME类型:application/x-ns-proxy-autoconfig。
  • 点击“确定”。

2. DHCP配置

按以下步骤确保DHCP服务器能检测到wpad.dat文件。

  • 进入“开始 > 管理程序 > DHCP”。
  • 在控制台树中右键点击所需的DHCP服务器,选择“设置预定义选项”,然后点击“添加”。
  • 输入以下信息-名称:WPAD,代码:252,数据类型:字符串。点击“确定”。
  • 在字符串字段中输入PAC文件的URL,例如, http://webserver.domain.com/wpad.dat。
  • 右键点击“服务器选项”,选择“配置选项”,确保选中选项252。

创建选项252条目后,执行以下步骤启用DHCP作用域选项:

  • 进入“开始 > 管理程序 > DHCP”。
  • 右键点击“作用域选项”,点击“配置选项”,选择“高级”。
  • 在“供应商类”中选择“标准选项”。
  • 在“可用选项”中点击252代理自动发现选项。点击“确定”。

3. 在DNS服务器中配置A记录

  • 进入“开始 > 程序 > 管理工具 > DNS”。
  • 右键点击所需的正向查找区域,选择“新建主机(A)”。
  • 输入信息-名称:wpad,IP地址:托管PAC文件的Web服务器的IP地址。点击“创建记录”。

4. 网页浏览器代理配置

使用组策略将自动代理检测推送至所有端点。配置组策略步骤如下:

  • 打开组策略管理控制台。右键点击“组策略对象”,点击“新建”。
  • 输入信息,例如名称:Proxy Autoconfiguration。点击“确定”。
  • 右键点击Proxy Autoconfiguration,点击“编辑”。
  • 在组策略管理编辑器中,依次进入“用户配置 > 首选项 > 控制面板设置”,右键点击“Internet设置”,选择“新建”,从下拉列表选择首选浏览器版本。
  • 在“属性”对话框中,进入“连接”选项卡,选择“局域网设置”。
  • 勾选“自动检测设置”框,点击“确定”。
  • 点击“应用”,然后点击“确定”关闭属性对话框。
  • 将组策略对象链接到域中所需的组织单位以强制执行策略。