将应用网关与应用服务Azure连接

3z6pesqy  于 2022-12-14  发布在  其他
关注(0)|答案(2)|浏览(199)

我的想法是在单个VNET中将应用网关与应用服务连接起来,但如果我尝试访问我的公共IP,我会得到502。
我一直在阅读this question,但我找不到如何解决我的问题。
现在我有这样的设置:
主VNET子网1 -〉应用网关子网2 -〉应用服务
到目前为止,我尝试的是使用网关的公共IP和私有VNET的IP对应用服务进行访问限制的配置:
Access restrictions
Backend Pool
Http Settings
即使有了这个,我的健康探测器上也有这个404。
Health probe
我应该以另一种方式将APP服务添加到VNET中吗?这是好的吗?我在这里做错了什么?

jtoj6r0c

jtoj6r0c1#

  • 我尝试在我的解决方案中重现相同的问题,并得到以下结果 *

我可以使用应用网关访问应用服务,同时限制应用服务中的IP地址
我已按照以下步骤使用私有端点通过应用程序网关访问应用程序服务
我已经创建了应用程序网关并配置了
后端池

访问限制

Http设置

健康探针

我已创建具有相同V-net的专用端点
x1c4d 1x指令集
已创建虚拟机以访问应用程序服务

已连接bastion服务以检查我是否能够访问应用程序服务

nslookup url


指令集
有关相关信息,请参阅此document

6l7fqoea

6l7fqoea2#

幸运的是,您收到的404排除了与可访问性相关的其他几个潜在原因。在您为后端设置提供的映像中,“Override with New Hostname”开关设置为“No”,这意味着您访问应用网关时使用的任何主机名都将作为主机名传递给您的应用服务。通常,应用服务使用 *. www.example.comazurewebsites.net子域,如果您发送错误的主机名或没有主机名,它将以404响应。您可以通过在浏览器中单击IP地址的应用服务来测试此问题;您将收到404。
如果将此选项切换为“是”,则有两个选项:您可以选择使用后端池中的FQDN覆盖主机名,在您的情况下是azurewebsites.net子域,或者您可以手动设置。这两种方法都适用于您的情况。
在此基础上,您可以配置自定义探测器。如果您没有看到列出的探测器,这是因为您正在使用默认值,该值会将主机名“127.0.0.1“发送到后端池成员。这是用于访问您的应用程序服务的IP地址的主机名,这可能是探测器失败并显示404的原因。
通过创建自定义探测器,您可以选择从后端设置中选择主机名或使用自定义主机名。您还将看到,您可以调整可接受状态代码的范围(默认值为200-399)。如果您的后端需要身份验证并返回401未授权,因为应用网关探测器无法执行身份验证,这在将来可能会很有用。
有关应用网关探测器的源文档:https://learn.microsoft.com/en-us/azure/application-gateway/application-gateway-probe-overview

相关问题