“自动代理结果缓存”是添加到 Internet Explorer 5.5 及更高版本中的一项增强性能。此缓存的目的是为了减少自动代理配置脚本在客户端的处理。在连接到某个 Internet 站点时,会使用
FindProxyForURL 函数来确定是否应使用代理以及应使用哪一种代理。Internet Explorer 5.5 及更高版本首先检查“自动代理结果缓存”,以确定以前的连接尝试是否使用了代理连接到主机。如果此检查失败,则表明这是当前会话期间到主机的第一次连接尝试,所以应使用正常的代理检测逻辑。下表举例说明了 Internet Explorer 5.5 及更高版本在确定是否应该使用代理以及应使用哪一种代理时所用的逻辑:
在通过代理服务器建立连接后,将缓存站点主机名以及代理服务器的名称。在同一会话中以后再次尝试访问该主机名时,将使用 Internet Explorer 已经缓存的关于使用哪一个代理的信息。因此,所有后续的到此主机的连接都将通过以前使用的代理。这就意味着,如果缓存的服务器名在此会话期间变为不可用,将不会重新处理自动代理配置脚本,而且您将在 Internet Explorer 中看到“Page Cannot Be Displayed”这一错误消息。
可能需要禁用“自动代理结果缓存”以提供所需的代理冗余。这会导致需要对 Internet Explorer 发出的每一个 GET 请求执行客户端处理。其结果是 Internet Explorer 的性能将受影响,具体情况视“自动代理配置脚本”的逻辑及其大小而定。要禁用“自动代理结果缓存”,请使用下列方法之一:
注意如果禁用自动代理缓存,可能会影响 Internet Explorer 的性能。
您可以使用下面的注册表项禁用“自动代理结果缓存”:
数值:EnableAutoproxyResultCache
类型:REG_DWORD
数据值:0 = 禁用缓存;1(或注册表项不存在) = 启用自动代理缓存(这是默认设置) 如果此注册表项不存在,您可以使用以下注册表文件创建该注册表项:
- 如果在 Internet Explorer 中打开了“自动检测设置”,将尝试从局域网 (LAN) 下载 Wpad.dat 文件并将其作为自动代理配置脚本处理。如果从该脚本返回一个代理并且 Internet Explorer 已经通过该代理建立了连接,则使用返回的主机和代理服务器名称更新“自动代理结果缓存”。
- 如果在 Internet Explorer 中打开了“使用自动配置脚本”,则会下载自动代理配置脚本并处理它。如果从该脚本返回一个代理并且 Internet Explorer 已经通过该代理建立了连接,则使用返回的主机和代理服务器名称更新“自动代理结果缓存”。
- 如果 Internet Explorer 是针对静态代理服务器配置的,将从注册表中检索代理服务器名称。
在通过代理服务器建立连接后,将缓存站点主机名以及代理服务器的名称。在同一会话中以后再次尝试访问该主机名时,将使用 Internet Explorer 已经缓存的关于使用哪一个代理的信息。因此,所有后续的到此主机的连接都将通过以前使用的代理。这就意味着,如果缓存的服务器名在此会话期间变为不可用,将不会重新处理自动代理配置脚本,而且您将在 Internet Explorer 中看到“Page Cannot Be Displayed”这一错误消息。
可能需要禁用“自动代理结果缓存”以提供所需的代理冗余。这会导致需要对 Internet Explorer 发出的每一个 GET 请求执行客户端处理。其结果是 Internet Explorer 的性能将受影响,具体情况视“自动代理配置脚本”的逻辑及其大小而定。要禁用“自动代理结果缓存”,请使用下列方法之一:
注意如果禁用自动代理缓存,可能会影响 Internet Explorer 的性能。
方法 1:修改注册表
重要说明:此部分、方法或任务包含有关如何修改注册表的步骤。但是,注册表修改不当可能会出现严重问题。因此,请一定严格按照下列步骤操作。为了获得进一步保护,请在修改注册表之前对其进行备份。这样就可以在出现问题时还原注册表。有关如何备份和还原注册表的更多信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
322756
(http://support.microsoft.com/kb/322756/ ) 如何在 Windows XP 中备份和还原注册表
您可以使用下面的注册表项禁用“自动代理结果缓存”:
HKEY_CURRENT_USER\Software\Policies\Microsoft\Windows\CurrentVersion\Internet Settings
数值:EnableAutoproxyResultCache
类型:REG_DWORD
数据值:0 = 禁用缓存;1(或注册表项不存在) = 启用自动代理缓存(这是默认设置)
Windows Registry Editor Version 5.00
[HKEY_CURRENT_USER\Software\Policies\Microsoft\Windows\CurrentVersion\Internet Settings]"EnableAutoProxyResultCache"=dword:00000000"
[HKEY_CURRENT_USER\Software\Policies\Microsoft\Windows\CurrentVersion\Internet Settings]"EnableAutoProxyResultCache"=dword:00000000"
方法 2:修改组策略设置
- 单击“开始”,单击“运行”,键入 gpedit.msc,然后单击“确定”。
- 在组策略对象编辑器中,依次双击“用户配置”、“管理模板”、“Windows 组件”、“Internet Explorer”。
- 双击“禁用缓存自动代理脚本”。
- 单击启用,然后单击确定。
320507
(http://support.microsoft.com/kb/320507/ ) Internet Explorer 长达 30 分钟无法重试不良代理服务器