修复 Web 应用程序

Web 应用程序兼容性修复报告视图提供了有关如何返工 Web 应用程序代码以解决发现的问题的详细信息。本主题提供有关您可以使用的其他修复选项的信息,例如,如果您无权访问源代码。但是,在重新开发 Web 应用程序之前,这些选项通常应被视为短期解决方案。

互联网浏览器文档兼容性

Internet 浏览器 8 及更高版本中有许多兼容模式。这些兼容模式决定了如何解释和显示网页。如果您的 Web 应用程序与 Internet Explorer 的目标版本不兼容,则可以选择将 Web 应用程序设置为使用适当的兼容模式。有几种方法可以设置兼容模式:

  • 使用组策略对象 (GPO) — 您可以将 Web 应用程序添加到以下组策略之一,以便分别以 IE7 标准或 Quirks 文档模式呈现该应用程序。如果 Web 应用程序托管在外部且您无法访问源代码,则此方法非常有用。

软件策略微软互联网资源管理器兼容性视图使用策略列表的 Internet 资源管理器 7 站点 软件策略微软互联网资源管理器兼容性视图使用策略列表的 Quirks 模式站点

有关详细信息,请参阅http://technet.microsoft.com/en-us/library/cc985351.aspx

  • 页面标题中使用元标记 -如果您有权访问 Web 应用程序的源代码,则可以使用页面标题中的元标记来指定页面将以特定模式运行,如下所示:
    <head>
      <meta http-equiv="x-ua-compatible" content="IE=Value">
      <title>My page</title>
    </head>

其中值是下表中的值之一。

说明
5 渲染页面,就好像 Internet 浏览器在 Quirks 文档模式下运行,这类似于在 Internet 浏览器 5 中呈现内容的方式。
7 忽略文档类型,如果存在,并呈现页面,就好像 Internet 浏览器 7 在 IE7 标准文档模式下运行。
8 忽略文档类型,如果存在,并呈现页面,就好像 Internet 浏览器 8 在 IE8 标准文档模式下运行。
9 忽略文档类型,如果存在,并呈现页面,就好像 Internet 浏览器 9 在 IE9 标准文档模式下运行。
EmulateIE7 尊重文档类型并呈现页面,就好像 Internet 浏览器 7 在 IE7 标准或怪癖文档模式下运行。
EmulateIE8 尊重文档类型并呈现页面,就好像 Internet 浏览器 8 在 IE8 标准或怪癖文档模式下运行。
EmulateIE9 尊重文档类型并呈现页面,就好像 Internet 浏览器 9 在 IE9 标准或怪癖文档模式下运行。
边缘 使用可用的最高模式。不推荐在生产环境中使用。

有关详细信息,请参阅http://msdn.microsoft.com/en-us/library/jj676915(v=vs.85).aspx

  • Web 服务器上使用自定义标头 — 如果 Web 应用程序在内部托管,则可以在 Web 服务器上的 HTTP 标头中使用元标记来指定整个站点将在特定模式下运行。如何执行此操作的详细信息取决于 Web 服务器的类型(例如,它是 IIS 还是 Apache)。但是,这些选项与上述在页面标题中使用元标记相同。

例如,对于 IIS 服务器,您可以向 web.config 文件添加一个部分,以便在 HTTP 标头中提供元标记,如下所示:

```
<configuration>
<system.webServer>
<httpProtocol>
<customHeaders>
<add name="X-UA-Compatible" value="IE=8" />
</customHeaders>
</httpProtocol>
</system.webServer>
</configuration>
```

有关详细信息,请参阅http://msdn.microsoft.com/en-us/library/jj676913(v=vs.85).aspx

使用虚拟浏览器环境

当其他选项无法解决问题时,您可以考虑在使用 Med-V 或 Citrix 终端服务器等虚拟化技术交付的受支持的浏览器版本中本地运行 Web 应用程序。

修复 Web 应用程序