在 IIS 上实现 META 切换

注意:本文档是预备文档,随时可能变更。

Windows Internet Explorer 8 引入了文本兼容性模式,该模式允许 Web 开发人员将浏览器设置为以与旧版本相同的方式呈现它们的页面。可以根据不同的页面或不同的站点指定兼容性模式。

本文档介绍了如何通过在 Internet Information Services (IIS) 中使用自定义标头,对每个站点实现 Windows Internet Explorer 8 支持的一种很常见的文本兼容性模式 — EmulateIE7。

有关 Windows Internet Explorer 8 支持的不同兼容性模式以及如何根据不同页面实现兼容性模式的详细信息,请参阅未来兼容性中的 META 标记和锁定

指定自定义 HTTP 响应标头

使用 IIS Web 服务器为站点定义自定义标头即可为您的网站指定文本模式。若要使 Microsoft IIS 能够定义自定义 HTTP 响应标头以便所有页面自动以 EmulateIE7 模式呈现,您可以使用以下 web.config 示例。

<?xml version="1.0" encoding="utf-8"?>
<configuration>
   <system.webServer>
      <httpProtocol>
         <customHeaders>
            <clear />
            <add name="X-UA-Compatible" value="IE=EmulateIE7" />
         </customHeaders>
      </httpProtocol>
   </system.webServer>
</configuration>

您也可以在基于 Windows Server 2008 的计算机上配置 IIS 7 以包含自定义 HTTP 响应标头,步骤如下:

  • 依次单击“开始”、“管理工具”,然后单击“Internet Information Services (IIS) 管理器”。
  • 在“连接”窗格中,展开服务器的节点,然后展开“站点”。
  • 单击要添加自定义 HTTP 响应标头的网站。
  • 在网站窗格中,双击“IIS”部分中的“HTTP 响应标头”。
  • 在“操作”下,单击“添加”。
  • 在“名称”框中,键入“X-UA-Compatible”。在“值”框中,键入 IE=EmulateIE7。
  • 单击“确定”。

若要将 IIS 6 及早期版本配置为包含自定义 HTTP 响应标头,请按照下列步骤进行操作:

  • 依次单击“开始”、“运行”,然后键入 inetmgr.exe 并单击“确定”。
  • 展开所需服务器,然后展开“网站”。
  • 右键单击所需网站,然后单击“属性”。
  • 单击“HTTP 标头”选项卡。
  • 在“自定义 HTTP 标头”下,单击“添加”。
  • 在“自定义标头名称”框中,键入“X-UA-Compatible”。
  • 在“自定义标头值”框中,键入“IE=EmulateIE7”。
  • 单击“确定”两次。

如果使用 Web 服务器指定了默认文本兼容性模式,则可通过在特定的网页中指定其他文本兼容性模式来覆盖该设置。在该网页中指定的模式优先于由服务器指定的模式。

自定义 HTTP 响应标头和其他 Web 服务器

有关 Windows Internet Explorer 8 文本兼容性模式和 Apache Web 服务器的详细信息,请参阅在 Apache 上实现 META 切换