Windows 10不读取文件协议引用的 PAC 文件

警告

已停用、不受支持的 Internet Explorer 11 桌面应用程序在某些版本的 Windows 10 上已通过 Microsoft Edge 更新永久禁用。 有关详细信息,请参阅 Internet Explorer 11 桌面应用停用常见问题解答

本文解决了 Internet Explorer 或 Microsoft Edge 无法读取代理自动配置 (PAC) 文件协议引用的问题。

原始产品版本:Windows 10、Microsoft Edge、Internet Explorer 11
原始 KB 编号: 4025058

症状

请考虑以下情况:

  • 已在 Windows 10 上配置了 Microsoft Internet Explorer 11 或 Microsoft Edge,以使用“使用自动配置脚本”选项。

  • 你正在测试或部署 PAC 文件。 你将文件存储在本地位置,例如 C:\temp\proxy.pac

  • 使用文件协议在“Internet 设置”中的“使用自动配置脚本”选项中指定了文件位置。

  • 你创建了以下注册表子项:

    HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\CurrentVersion\Internet Settings\  
    Value: EnableLegacyAutoProxyFeature  
    Type:REG_DWORD  
    Data:1
    

在这种情况下,Internet Explorer 或 Microsoft Edge 不会读取 PAC 文件。

原因

出现此问题的原因是基于 Windows 10 的计算机上的 Internet Explorer 和 Microsoft Edge 使用 WinHttp 代理服务来检索代理服务器信息。 WinHttp 代理服务不支持对 PAC 文件使用 ftp://file:// 协议。

解决方案

若要解决此问题,请在 Web 服务器上托管 PAC 文件,然后使用 http 协议引用该文件。

注意

必须为 Web 服务器上的 PAC 文件指定 application/x-ns-proxy-autoconfig MIME 类型,以便 WinHttp 代理服务使用 PAC 文件。
否则,PAC 文件的扩展名必须是 .dat.js.pac.jvs