问题标签 [azure-front-door]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
3983 浏览

azure - Azure 前端门显示“我们的服务现在不可用”与服务结构集群

我已经在 azure 门户中设置了 Azure Frontdoor。我创建了

2 前端主机

  1. myappdev1.azurefd.net
  2. dev1.myapp.com

Baackendpool 具有以下功能

1.BackendHostName=myappdev1.northeurope.cloudapp.azure.com 2.Backendhostheader=dev1.myapp.com 3.HTTPS 端口 62652

和路由规则

使用 https 路由规则,仅使用 HTTPS 将前端映射到后端。myappdev1.northeurope.cloudapp.azure.com 是一个服务结构集群,其 Web 应用程序部署在端口 62652 上,因此 URL https://myappdev1.northeurope.cloudapp.azure.com:62652有效。

我还在 CDN 中将 dev1.myapp.com 映射到 myappdev1.azurefd.net

但是在运行 https://myappdev1.azurefd.nethttps://dev1.myapp.com

我收到一个错误

我们的服务目前不可用 我们正在努力尽快恢复所有服务。请稍后再回来查看。

0 投票
3 回答
6273 浏览

asp.net - Azure 前门 WAF 正在阻止 .AspNet.ApplicationCookie

我想知道是否有其他人遇到过 Azure Front Door 和 Azure Web 应用程序防火墙的问题并有解决方案。

WAF 正在阻止对我们的 ASP.NET Web 应用程序的简单 GET 请求。被触发的规则是DefaultRuleSet-1.0-SQLI-942440 SQL Comment Sequence Detected

根据这个截断的示例,我可以找到 sql 注释序列的唯一位置是 .AspNet.ApplicationCookie:RZI5CL3Uk8cJjmX3B8S-q0ou--OO--bctU5sx8FhazvyvfAH7wH。如果我删除 cookie 值中的 2 个破折号“--”,则请求成功通过防火墙。一旦我将它们添加回来,请求就会被相同的防火墙规则阻止。

看来我有两个选择。禁用我不想执行的规则(或将其从 Block 更改为 Log),或更改 .AspNet.ApplicationCookie 值以确保它不包含任何会触发防火墙规则的文本。cookie 由 Microsoft.Owin.Security.Cookies 库生成,我不确定是否可以更改它的生成方式。

0 投票
2 回答
2119 浏览

azure - 在一个 Azure Front Door 后面设置多个 Web 应用

我有两个应用服务,WebApp1 和 WebApp2,它们使用多区域架构。

在区域 1:

  • WebApp1
  • WebApp2

在区域 2:

  • WebApp1
  • WebApp2

建筑学:

在此处输入图像描述

这两个 Web 应用程序完全独立且彼此独立(但共享相同的数据库),并且都将拥有自己的自定义域。应该向最终用户公开的 URL 是这样的。

  • WebApp1 -- www.webapp1.com
  • WebApp2 -- www.webapp2.com

我已经检查过了,但这不符合我的要求。这两个应用程序需要部署为独立的应用程序,而不是虚拟应用程序(如果这不是唯一的方法)。

我不想为此使用多个 AFD?是否可以使用单个 AFD 来满足我的要求?任何建议将不胜感激。

0 投票
1 回答
263 浏览

microservices - 使用微服务设置 Azure Front Door 运行状况检查

我有一个包含多个微服务的服务结构集群,我想设置 Azure 前门,但是它要求在后端提供一个运行状况检查端点,但我不知道我应该如何设置它,因为集群没有有一个端点。

谁能指出我正确的方向?

0 投票
1 回答
1597 浏览

azure-front-door - Azure Front Door - 配置维护页面

我得到了带有 1 个 FE 网络应用程序的 AFD。我想添加另一个包含维护/抱歉页面的 Web 应用程序。所有来自 FE 的 URL 都需要缓存,抱歉页面图片不能缓存。
我试图将我的抱歉页面 Web 应用程序添加到具有低优先级和权重的同一后端池中。当我关闭 FE 时,它会重定向到抱歉页面 Web 应用程序,但它会缓存内容。
据我了解,我不能使用另一个后端池(禁用缓存),因为 2 个池无法连接到同一个 AFD FE 端点。

任何想法如何将维护页面 Web 应用程序添加到 AFD?提前致谢。

0 投票
1 回答
180 浏览

azure - Azure Frontdoor:缓存作为后端的后备

在我们的一个用例中,我们正在寻找一种方法让 Azure Frontdoor 提供缓存的内容,但前提是相应的后端已关闭。后端 URL 路径是固定的(因此没有动态查询参数等)并且大部分时间返回静态 html 内容,但每隔几分钟就会发生不频繁的内容更新。我们希望 Frontdoor 一直从后端获取响应,同时缓存最后一个响应,并在后端发生故障时提供相同的服务。因此,缓存的内容被用作后端的故障转移机制,其中返回的缓存内容可能不是最新的,但仍会为请求提供一些陈旧的内容。Frontdoor 是否可以配置为服务于这样的用例。

0 投票
1 回答
1540 浏览

azure - Azure FrontDoor 配置中的根域

我正在尝试在 Azure FrontDoor 中为我的网站 (myrootdomain.eu) 的 Apex/根域设置路由。

参考:https ://docs.microsoft.com/en-us/azure/frontdoor/front-door-how-to-onboard-apex-domain

@.myrootdomain.eu在 Azure DNS 中针对作为 FrontDoor 的 Azure 资源创建别名记录。一个 CNAME 是这样创建的:afdverify.myrootdomain.eu

当我尝试将自定义域(myrootdomain.eu)添加到 FrontDoor 的前端主机中时,它给出了错误 CNAME 记录未找到。这里需要什么额外的步骤。在我的 DNS 123 域或此域的前门中是否有任何设置或映射:afdverify.myrootdomain.eu

裸域(myrootdomain.eu)的域提供程序(在我的情况下为 123domain)中的映射应该是什么?

在参考文档中找不到任何关于此的内容。

0 投票
2 回答
625 浏览

azure-active-directory - AAD 回复 url 由 Azure 中的 WAF 标记

我已经在 Azure FrontDoor 中启用了带有检测模式的默认策略的 Web 应用程序防火墙。在 WAF 生成的日志中,我们可以看到防火墙将 AAD 中设置的回复 url 标记为 Block。

在此处输入图像描述

我相信防火墙将其检测为威胁。由于 url 是 AD 身份验证工作所必需的,那么可以做些什么来确保安全?或者这可以忽略不计?

0 投票
0 回答
621 浏览

azure - 使用 Azure Front Door 将静态文件请求路由到 Blob 存储

我们有一个网站,其中前端是托管在 Azure Blob 存储中的 SPA,后端托管在 Azure 应用服务中。该站点的前面将是 Azure Front Door。我正在尝试将请求路由到正确的后端。

应用服务中托管的站点中的所有终结点都具有 /backend/* 格式。

在前端,我们在根目录中有一些文件,/index.html 和一些其他文件,如 favoicon.ico,然后是 /assets 文件夹中的一些文件。这些唯一的共同点是它们在文件名中有一个句点。

SPA 具有不对应于任何物理文件的动态 url,例如 /login。

我想要 Front Door 中的以下路由,但我在为/*.*模式创建规则时遇到问题,即将看起来像文件的所有内容路由到 blob 存储而无需重写 url。

还有其他方法可以完成这项工作吗?

0 投票
0 回答
427 浏览

c# - 向最终用户提供 Asp.Net Core 健康信息的最佳方式是什么?

语境

我正在寻找一种方法来告诉我的用户我的 Asp.Net Core 站点的一个依赖项已关闭,因此该站点当前不可用。最好使用错误页面。

Asp.Net Core 提供了健康检查功能来管理依赖健康检查的逻辑,但它只提供了一个用于负载平衡器的端点。还有一种仪表板功能可用于健康检查,但这并不意味着最终用户的错误页面,它是针对管理员的。

我为什么要研究这个功能?

我正在使用 Azure 前门。该产品用作负载平衡器。它可以查看 Asp.Net Core 健康检查提供的健康状态端点,并将不健康的后端节点排除在轮换之外。

但是,它不提供自定义错误页面,并且在所有后端节点都关闭的情况下,它将假定所有节点都是健康的。我的站点的依赖项之一是外部服务,如果它关闭,我的站点的所有实例都将关闭。它包含例如用户与我的站点交互所需的用户帐户。因此,我相信我需要在 Asp.Net Core 站点中实现一个错误页面,当该外部依赖项关闭时,该页面将显示一个错误页面。

建议的解决方案

我的一个想法是让中间件在站点降级时始终返回503 Service Unavailable或抛出异常。然后,Asp.Net Core 状态页面功能可以将其转换为适当的错误页面。

问题 1

这是最好的架构吗?其他人是如何做到这一点的?

问题2

访问当前健康状况的最实用方法是什么?

从技术上讲,可以HealthCheckService.CheckHealthAsync(...)直接调用该方法,但等待该方法需要一些时间(特别是如果其中一个依赖服务没有响应)。因此,在请求管道中进行阻塞并不是一个好主意。

我可以使用 aHealth Check Publisher通过将其发布到某个自定义HealthStatusCache服务来缓存健康状态,但感觉有点像一种解决方法。其他人会这样做吗?