访问网站时 Internet Explorer 可能无法解压缩 HTTP 内容

文章翻译 文章翻译
文章编号: 871205 - 查看本文应用于的产品
重要说明:本文包含有关如何修改注册表的信息。修改注册表之前,一定要先进行备份,并且一定要知道在出现问题时如何还原注册表。有关如何备份、还原和修改注册表的更多信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
256986 Microsoft Windows 注册表说明
展开全部 | 关闭全部

本文内容

症状

当您访问某个网站时,Microsoft Internet Explorer 可能无法解压缩 HTTP 内容。如果符合以下所有条件,则可能会遇到此问题:
  • 在 Web 服务器上启用了 Chunked 编码。
  • 在 Web 服务器上启用了 HTTP 压缩。
  • 使用 HTTPS 协议从 Web 服务器发送数据。
您可能会遇到此问题表现出的各种症状,具体症状因 Internet Explorer 试图解压缩的内容而异。例如,如果由网站服务器发送的内容是一个 JavaScript 文件,您可能会收到脚本错误。

原因

当 WININET 和 URLMON 之间的通知丢失时会出现此问题。通知丢失时,解压缩所需的一个编码区块也会丢失。当编码区块丢失时,gzip 解压缩程序会失败。

注意
  • WININET (Wininet.dll) 是接收 HTTP 数据的组件。URLMON (urlmon.dll) 是实现 gzip 解压缩程序的组件。
  • HTTP 压缩也称为 gzip 编码。

解决方案

Service Pack 信息

要解决此问题,请获取最新的 Windows XP Service Pack。有关更多信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
322389 如何获取最新的 Windows XP Service Pack

修补程序信息

Microsoft 目前提供了一个受支持的修补程序。但是,此修补程序仅用于修复本文所述的问题。请仅将此修补程序应用于出现这一特定问题的系统。此修补程序可能还会接受进一步的测试。因此,如果这个问题没有给您造成严重的影响,我们建议您等待包含此修补程序的下一个 Service Pack。

要解决此问题,请向 Microsoft 在线客户服务提交请求以获取该修补程序。要提交联机请求以获取该修补程序,请访问下面的 Microsoft 网站:
http://go.microsoft.com/?linkid=6294451
注意:如果发生其他问题或需要进行任何疑难解答,则您可能需要创建单独的服务请求。对于此特定修补程序无法解决的其他支持问题和事项,将照常收取支持费用。要创建单独的服务请求,请访问下面的 Microsoft 网站:
http://support.microsoft.com/contactus/?ws=support

文件信息

此修补程序的英文版具有下表所列的文件属性(或更新的文件属性)。这些文件的日期和时间按协调世界时 (UTC) 列出。当您查看文件信息时,相应的时间将转换为本地时间。要了解 UTC 与本地时间之间的时差,请使用“控制面板”中“日期和时间”工具中的“时区”选项卡。
Microsoft Internet Explorer 6 Service Pack 1 (SP1)
日期         时间   版本           大小     文件名
-------------------------------------------------------
14-Jan-2005  17:21  6.0.2800.1489  581,632  Wininet.dll
Microsoft Internet Explorer 6 Service Pack 2 (SP2)
日期         时间   版本           大小     文件名
-------------------------------------------------------
10-Jun-2005  01:38  6.0.2900.2695  658,944  Wininet.dll

安装信息

警告:如果使用注册表编辑器或其他方法错误地修改了注册表,则可能会出现严重问题。这些问题可能需要重新安装操作系统才能解决。Microsoft 不能保证可以解决这些问题。修改注册表需要您自担风险。

安装此修补程序后,请按照下列步骤操作:
  1. 退出 Internet Explorer。
  2. 单击“开始”,单击“运行”,键入 regedit,然后单击“确定”。
  3. 找到并单击下面的注册表子项:
    HKEY_CURRENT_USER\SOFTWARE\Microsoft\Internet Explorer\Main\FeatureControl\FEATURE_RESET_SOCKET_FLAGS_KB871205
  4. 在“编辑”菜单上,指向“新建”,然后单击“DWORD 值”。
  5. 键入 Iexplore.exe,然后按 Enter。
  6. 右键单击“Iexplore.exe”,然后单击“修改”。
  7. 在“数值数据”框中,键入 00000001,然后单击“确定”。
  8. 退出注册表编辑器。

替代方法

要解决此问题,应在 Web 服务器上禁用 Chunked 编码或者禁用 HTTP 压缩。要在 Microsoft Internet 信息服务 (IIS) 6.0 中查看 HTTP 压缩设置,请按照下列步骤操作:
  1. 单击“开始”,指向“管理工具”,然后单击“Internet 信息服务(IIS)管理器”。
  2. 展开 Web 服务器,右键单击“网站”,然后单击“属性”。
  3. 单击“服务”选项卡,然后查看“HTTP 压缩”下显示的选项。

状态

Microsoft 已经确认这是 Microsoft Internet Explorer 6 Service Pack 1 中存在的问题。

更多信息

此问题通常出现在运行 Apache HTTP 服务器的计算机上,因为 Apache HTTP 服务器可以对任何类型的文件使用 Chunked 编码。这包括静态文件,如 JavaScript 文件或 .gif 文件。出现本文中描述的问题时,存储在 Internet Explorer 缓存中的内容会被截断或损坏。

注意:默认情况下,Microsoft Internet Information Server 不使用 Chunked 编码。 有关更多信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
278998 如何在 IIS 中启用 Chunked 传输编码
本文中提到的第三方产品由 Microsoft 以外的其他公司提供。对于这些产品的性能或可靠性,Microsoft 不作任何暗示保证或其他形式的保证。

属性

文章编号: 871205 - 最后修改: 2007年9月7日 - 修订: 3.0
这篇文章中的信息适用于:
  • Microsoft Internet Explorer 6.0 Service Pack 1
关键字:?
kbtshoot kbqfe kbprb kbhotfixserver KB871205
Microsoft和/或其各供应商对于为任何目的而在本服务器上发布的文件及有关图形所含信息的适用性,不作任何声明。 所有该等文件及有关图形均"依样"提供,而不带任何性质的保证。Microsoft和/或其各供应商特此声明,对所有与该等信息有关的保证和条件不负任何责任,该等保证和条件包括关于适销性、符合特定用途、所有权和非侵权的所有默示保证和条件。在任何情况下,在由于使用或运行本服务器上的信息所引起的或与该等使用或运行有关的诉讼中,Microsoft和/或其各供应商就因丧失使用、数据或利润所导致的任何特别的、间接的、衍生性的损害或任何因使用而丧失所导致的之损害、数据或利润负任何责任。

提供反馈

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com