在 Azure 应用程序网关卸载时如何需要 SSL?

Kei*_*ton 3 asp.net iis ssl azure azure-application-gateway

我正在将 ASP.Net 网站迁移到 Azure 托管。我正在使用具有 SSL 卸载功能的应用程序网关,因此我的个人负载平衡 Web 服务器没有安装 SSL 证书。由于 SSL 是在应用程序网关上处理的,我如何向客户端请求 SSL 并将其从 HTTP 重定向到 HTTPS?

Chr*_*ler 6

我对通过 3 个独立的应用程序网关运行的近 300 个站点执行此操作,一旦配置完成,它就可以正常工作。

答案在于侦听器/规则对的配置。

您需要为每个站点提供两个侦听器(一个用于 HTTP,一个用于 HTTPS)和两个规则(同样一个用于 HTTP,一个用于 HTTPS)才能实现此目的。

这里为您一步步列出:

1. 创建一个新的 HTTP 侦听器:为其命名为“Listener_HTTP”、端口 80、HTTP 协议、多站点侦听器类型,然后输入您的主机名,如下所示:

在此输入图像描述

2. 创建一个新的 HTTPS 侦听器:名称“Listener_HTTPS”、“端口 443”、“HTTPS 协议”,选择现有的或创建一个新的 SSL 证书、多站点侦听器类型,输入您的主机名,如下所示:

在此输入图像描述

3. 创建新的 HTTP 规则:创建一个新规则,名称为“Rule_HTTP”。在“侦听器”选项卡上,将其链接到上面步骤 1 中创建的 HTTP 侦听器,如下所示:

在此输入图像描述

在“后端目标”选项卡上,目标类型应为“重定向”,重定向类型应为“已找到”,重定向目标应为在上述步骤 2 中创建的HTTPS 侦听器,如下所示:

在此输入图像描述

4. 创建新的 HTTPS 规则:创建一个新规则,名称为“Rule_HTTPS”,在“侦听器”选项卡上将其指向上面步骤 2 中创建的 HTTPS 侦听器,如下所示:

在此输入图像描述

在“后端目标”选项卡上,将目标类型设置为“后端池”并将其指向您选择的后端池和 HTTP 设置,如下所示(此答案假设您已经进行了这些设置):

在此输入图像描述

瞧!你有它!任何直接点击 HTTPS 的请求都将直接进入后端池。任何命中 HTTP 的请求都会循环回 HTTPS 监听器,有效地实现您正在寻找的强制重定向。