Azure 前门 URL 重写/重定向

问题描述 投票:0回答:1

假设我有一个 Azure 应用服务 -

abc.com

现在我有了另一个 Azure 应用服务 -

hub.com

我想将

abc.com/hub
重新路由到
hub.com
,但将 URL 保留为 -

abc.com/hub

目前我已经设置了两个起始组和每个组的路线。还有一个使用 URL 重写的规则集。

enter image description here

正在发生的事情 -

abc.com/hub
我明白 -
hub.com/hub

azure url-rewriting azure-front-door
1个回答
0
投票

出现此问题的原因是当前的重写规则导致 URL 重复

/hub
,因此您不会将 URL 保留为
abc.com/hub
,而是会得到
hub.com/hub
。要解决此问题,您应该将源模式更改为
/hub/*
并将目标设置为
/
。这将防止最终 URL 中出现重复的
/hub
。因此,当用户访问
abc.com/hub
时,请求将被转发到
hub.com
,但 URL 仍会显示为
abc.com/hub

此外,请确保“保留不匹配的路径”选项设置为“是”。这有助于在不改变路径的情况下传递 URL 的任何其他部分。

确保规则链接到 abc-origin(对于

abc.com
)而不是 hub-origin。这样,任何对
abc.com/hub
的请求都将路由到后端
hub.com
应用程序,但向用户显示的 URL 仍将是
abc.com/hub

如果问题仍然存在,您可以检查 Azure 前门日志以准确查看请求转发到的位置,这可能有助于解决任何遗留问题。

对于 CSS 和功能不起作用的问题,可能是 CSS 等静态文件的路径在重写过程中被破坏。检查以确保静态资产的请求得到正确转发,而无需更改其路径。您可以测试应用程序是否直接在

hub.com
上运行,以确保一切正常。

通过调整这些设置,原始 URL

abc.com/hub
应对用户保持可见,同时将请求正确路由到
hub.com
后端。

参考: https://learn.microsoft.com/en-us/azure/frontdoor/front-door-url-rewrite?pivots=front-door-standard-premium

© www.soinside.com 2019 - 2024. All rights reserved.