IE11 PAC文件更改
Microsoft对IE11处理本地PAC文件的方式进行了更改。您可以在此处阅读有关它们的信息,或在下面查看一些快速信息。
另请注意,该alert()
语句自Windows 8起不再起作用。
使用IE11,不再可能通过文件协议使用PAC文件,除非您添加以下注册表项:
[HKLM\SOFTWARE\Policies\Microsoft\Windows\CurrentVersion\Internet Settings]
(DWORD)"EnableLegacyAutoProxyFeatures"=1
注意:使用Windows 8或更高版本时,警报语句将不再显示!
带AUTOPROX的DEBUG PAC文件 (下载链接)
有时,尽管您无法访问所讨论的网站,但如果返回了预期的路由,则只需要测试PAC文件即可。对于此类测试,您可以使用由Pierre-Louis Coll创建的(附加的)命令行实用工具autoprox.exe。
在CMD
不带附加参数的情况下启动时,将显示用法:
C:\temp>autoprox
Version : 2.1.0.0
Written by pierrelc@microsoft.com
Usage : AUTOPROX -s (calling DetectAutoProxyUrl and saving wpad.dat file in temporary file)
Usage : AUTOPROX [-h] url [Path to autoproxy file]
-h: calls InternetInitializeAutoProxyDll with helper functions implemented in AUTOPROX
AUTOPROX url: calling DetectAutoProxyUrl and using WPAD.DAT logic to find the proxy for the url
AUTOPROX url path: using the autoproxy file from the path to find proxy for the url
Example: autoprox -s
Example: autoprox http://www.microsoft.com
Example: autoprox -h http://www.microsoft.com c:\inetpub\wwwroot\wpad.dat
Example: autoprox http://www.microsoft.com http://proxy/wpad.dat
这是示例的输出:
C:\temp>autoprox http://us.msn.com c:\temp\sample.pac
The Winsock 2.2 dll was found okay
url: http://us.msn.com
autoproxy file path is : c:\temp\sample.pac
Calling InternetInitializeAutoProxyDll with c:\temp\sample.pac
Calling InternetGetProxyInfo with url http://us.msn.com and host us.msn.com
Proxy returned for url http://us.msn.com is:
PROXY myproxy:80;
如果您想查看已调用了哪些与DNS相关的功能,则可以另外使用参数“ -h”:使用该参数时的输出:
C:\temp>autoprox -h http://us.msn.com c:\temp\sample.pac
The Winsock 2.2 dll was found okay
Will call InternetInitializeAutoProxyDll with helper functions
url: http://us.msn.com
autoproxy file path is : c:\temp\sample.pac
Calling InternetInitializeAutoProxyDll with c:\temp\sample.pac
Calling InternetGetProxyInfo with url http://us.msn.com and host us.msn.com
ResolveHostByName called with lpszHostName: us.msn.com
ResolveHostByName returning lpszIPAddress: 65.55.206.229
Proxy returned for url http://us.msn.com is:
PROXY myproxy:80;
autoprox.exe中的错误处理:
当您指定不存在的PAC文件(例如,命令行中的错字)时,autoprox.exe的结果将是:
ERROR: InternetInitializeAutoProxyDll failed with error number 0x6 6.
当Pac文件包含语法错误时,通常会收到显示以下消息:
ERROR: InternetGetProxyInfo failed with error number 0x3eb 1003.
完成本地测试后,应将PAC文件复制到Web服务器,在该服务器上将通过http协议对其进行访问。