gpt4 book ai didi

Azure 应用服务始终开启,自定义域重定向不会点击默认网页

转载 作者:行者123 更新时间:2023-12-02 01:25:41 24 4
gpt4 key购买 nike

一旦没有为 Web 应用程序设置自定义域,Azure 应用服务 AlwaysOn 就能完美运行。添加自定义域以及 URL 重写规则以将所有传入请求重定向到该域后,应用程序在不活动一段时间后开始响应缓慢。日志显示 AlwaysOn 仍会 ping azure 域并获取 HTTP 301 响应,并且不会尝试请求新 URL。

没有自定义域的日志:

2017-06-20 17:17:02 ZZTESTSITE GET / X-ARR-LOG-ID=743965b6-d3e2-42b9-9353-7772f9fbc898 80 - ::1 AlwaysOn ARRAffinity=b5289afa9cd711b67c1fe9137a6e3ff232f80bd3fa1bd96e9fc89992472b4e57 - zztestsite.azurewebsites.net 200 0 0 11433 652 15

使用自定义域登录

2017-06-21 13:28:52 ZZTESTSITE GET / X-ARR-LOG-ID=ffcd5992-5019-48ca-a386-76443a8c7226 80 - ::1 AlwaysOn ARRAffinity=b5289afa9cd711b67c1fe9137a6e3ff232f80bd3fa1bd96e9fc89992472b4e57 - zztestsite.azurewebsites.net 301 0 0 553 652 46

URL重写规则:

<rule name="Redirect requests from default azure websites domain to custom one" stopProcessing="true">
<match url="(.*)" />
<conditions logicalGrouping="MatchAny">
<add input="{HTTP_HOST}" pattern="^zztestsite\.azurewebsites\.net$" />
</conditions>
<action type="Redirect" url="http://mycustomdomain.com" redirectType="Permanent" appendQueryString="false"/>
</rule>

此外,一旦启用 SSL 并添加另一个规则将所有请求重定向到 HTTPS,就会出现同样的问题。

我该如何解决这个问题?我发现了两个可能的方向:

  1. 插入 AlwaysOn 以 ping 自定义域(可能使用 https 作为选项)
  2. 将 URL 重写规则更改为允许 AlwaysOn ping azure 域的规则,但所有其他规则均应重定向

请指教。

最佳答案

尝试将此行添加到您的条件中:

<conditions>
<add input="{HTTP_HOST}" pattern="^zztestsite\.azurewebsites\.net$" />
<add input="{WARMUP_REQUEST}" pattern="1" negate="true" />
</conditions>

这表明为始终开启 ping 进行重定向。另请注意,我删除了 MatchAny,因为您确实需要此处的 MatchAll(当您只有一个时,这无关紧要)。

参见here以获得更完整的示例。它用于将 http 重定向到 https,但其核心思想与 Always On 请求相同。该示例是 xdt 转换,因此它看起来与“直接”配置有点不同。事实上,您可能会考虑使用此类 xdt,而不是污染您的 web.config。

关于Azure 应用服务始终开启,自定义域重定向不会点击默认网页,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44724430/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com