Internet Information Services(IIS)是微软推出的强大平台,用于在 Windows 操作系统上托管、部署和管理网站及 Web 应用程序。它又被称为 Windows Web Server,支持 ASP.NET、PHP、Python、Node.js 等多种技术,能够满足从简单静态网站到复杂 Web 应用的各种托管需求。

无论是托管小型网站还是管理企业级应用,为 IIS 服务器启用 HTTPS 都是保障数据隐私与建立用户信任的必要举措。如果你刚接触服务器管理,启用 HTTPS 起初可能显得有些棘手。本文将带你逐步完成在 IIS 上启用 HTTPS 的操作,并提供清晰的步骤说明与实用提示。

在 IIS 上启用 HTTPS 前需注意的事项

  • Windows Server 2012 R2 及更低版本上的 IIS 8.5 不兼容 HTTP/2 协议。
  • Windows Server 2016 与 Windows 10 开始支持 HTTP/2。
  • 目前 IIS 仅支持 HTTP/2,而不支持传输层安全(TLS)的专属配置。
  • 当前没有针对 HTTP/2 的独立配置项,也无需设置 DuoEnabled 注册表项,因此建议将其设为 1。
  • 当浏览器与服务器均支持 HTTP/2 时,IIS 会自动启用;若不支持,则会回退至 HTTP/1.1。
  • 若使用 Kerberos、NTLM、Negotiate 等 Windows 身份验证方法且已启用 HTTP/2,IIS 会回退到 HTTP/1.1,因为这些方法不支持 HTTP/2。
  • 借助 IIS 功能限制带宽仅适用于 HTTP/1.1,对 HTTP/2 无效。

在 IIS Web 服务器上启用 HTTP/2

启用 IIS 上的 HTTP/2 只需三个步骤:

  • 安装 IIS Manager(Internet Information Services 管理器)
  • 创建自签名 SSL 证书
  • 绑定所创建的自签名 SSL 证书

下面详细了解每一步的操作。

步骤 1:安装 IIS Manager

  • 在任务栏点击“搜索”。
  • 输入“启用或关闭 Windows 功能”后按回车。
  • 弹出“Windows 功能”对话框。
  • 找到“Internet Information Services”选项并勾选。
  • 点击弹窗右下角的“确定”按钮。

步骤 2:创建自签名 SSL 证书

由网站所有者自行签名的 SSL/TLS 证书称为自签名 SSL 证书。这类证书通常用于内部用途的网站,例如组织内部的局域网(LAN)或测试环境。如果网站需要与公司外部网络通信,自签名证书不会被信任,也无法验证签发证书的一方是否确为网站所有者。

不过,出于测试或其他原因(例如服务器位于防火墙之后,无法使用 Sectigo、DigiCert 等全球受信任 CA 签发的证书),你可以按以下步骤创建自签名证书。

注意:尽量避免使用自签名证书,因为它们会触发安全警告,且不被认为是可靠的。

  • 在任务栏点击“搜索”。
  • 输入“IIS Manager”并回车。
  • 打开 IIS Manager 窗口。
  • 在窗口中执行以下操作:
  • 点击“服务器证书”。
  • 在“操作”列中点击“自签名证书”。
  • 在名称字段中指定一个易记的友好名称。
  • 在“选择新证书的证书存储”列表中,选择“Web 托管”。
  • 点击“确定”按钮。

步骤 3:绑定所创建的自签名证书

要使用创建好的自签名 SSL 证书,需要将其与网站绑定。每个 Web 服务器加载并绑定 SSL 证书的流程各不相同。

  • 在“连接”列中展开“站点”。
  • 选择并点击“默认网站”。
  • 在“操作”列中点击“绑定”。
  • 点击“绑定”后,弹出“站点绑定”对话框。
  • 点击“添加”。
  • 弹出“添加站点绑定”对话框。
  • 在“类型”列表中选择 https。
  • 在 SSL 证书列表中,选择你创建的自签名证书名称。
  • 点击“确定”按钮。

如何检查 HTTP/2 是否已启用?

要验证 HTTP/2 是否启用,可使用 Google Chrome 浏览器的开发者工具,步骤如下:

  • 在 Chrome 中打开新标签页。
  • 输入网站 URL。
  • 点击右上角的三个竖点(自定义及控制 Google Chrome)。
  • 在列表中选择“更多工具”→“开发者工具”。
  • 在开发者工具中选择“网络”标签。

打开“网络”标签后,查看“协议”列的值。如果显示为 h2,则证明 IIS 已启用 HTTP/2。

HTTP/S 与 HTTP/2 是同一回事吗?

HTTP/S 用于保障客户端与服务器之间的连接安全,确保传输数据安全;而 HTTP/2 允许一次性请求多个文件,从而显著提升网站性能与服务器效率。最新的 IIS 10 支持 HTTP/2 协议,相比 HTTP/1.1 具有更低延迟,有助于改善资源利用率。

小结

在 IIS 中启用 HTTPS 并非难事,只需三个简单步骤即可完成:安装 IIS Manager、创建自签名证书,并绑定所创建的证书。本文也重点介绍了为何应更关注 HTTP/2 而非仅停留在“如何在 IIS 上启用 HTTPS”的问题上。希望本文能解答你的疑问。