为什么我在 Azure 应用程序网关中看到 403 禁止?

Con*_*der 5 azure http-error azure-application-gateway

无论我是否有侦听器 (443) 和规则,访问https://www.example.com时看到的错误是:

403 - Forbidden

You don't have permission to access / on this server.
Run Code Online (Sandbox Code Playgroud)

如果我在端口 443 上添加侦听器,附加有效的证书和规则,我会收到相同的错误消息。如果我挖掘 www.example.com,我可以看到它正在解析为应用程序网关的公共 IP。

http://www.example.com通过端口 80 上的侦听器按预期工作,并且规则将流量定向到托管 Apache 的后端虚拟机。

我应该补充一点,这是使用 Azure 门户进行设置的。我应该使用 PowerShell 吗?一些论坛认为该门户网站不稳定。

Con*_*der 4

该问题已解决,并且与我们遇到的重定向问题有关。

该问题似乎是以下问题的组合:

  • 我们在端口 443 上有一个没有主机名的侦听器。

  • 当侦听器没有主机名时,基于路径的规则的顺序似乎很重要。

根据经验,基于路径的规则应低于基本规则。此外,如果应用程序网关用于多个站点,请确保为侦听器定义主机名。