根据 Azure 应用程序网关中的请求标头重写主机名

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

我知道我们可以在 azure 应用程序网关中使用 rewrites 来重写您的 url、请求/响应标头。 但是我们如何根据条件修改我们的主机。

我已经尝试重写 Header Host 但 Appgw 给了我错误:你不能这样做,因为你有与此相关的后端操作

azure url-routing azure-application-gateway
1个回答
0
投票

我已经尝试重写 Header Host 但 Appgw 给了我错误:你不能这样做,因为你有与此相关的后端操作。

注意,Azure 应用程序网关重写规则作为限制 - 当应用程序网关配置为重定向请求或显示自定义错误页面时,不支持重写。请参阅此MsDoc

如果您有与 Host 标头关联的后端操作,则可以尝试使用重写规则来修改 Location 标头。您可以将 Location 标头中的主机名设置为应用程序网关。

在应用程序网关中,创建重写规则集并根据您的要求添加带有正则表达式模式的 if 条件我已添加带有标题和模式的变量以进行匹配,如下所示

(https?):\/\/.*azurewebsites.net(.*)$

enter image description here

然后在操作类型中选择

set
作为操作类型,并选择
respose
作为响应类型

enter image description here

此值将在位置标题中将

azurewebsites.net
替换为
google.com

enter image description here

参考

使用 Azure 应用程序网关重写 HTTP 标头和 URL |微软学习

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