从Azure应用程序网关后面的Web应用程序重定向

时间:2018-09-19 20:25:00

标签: azure iis azure-application-gateway

我在Azure中设置了两个Web应用程序,为简单起见,我们将其称为webapp1和webapp2。它们位于应用程序网关的后面,该网关根据URL中的子目录选择正确的Web应用程序。

这是我如何进行设置的基本示例:

www.mydomain.com-> webapp1(默认路由)

www.mydomain.com/app-> webapp2

除了一个问题外,此方法工作正常:例如,如果webapp2重定向到登录页面,则URL中的域将更改为azurewebsites.net域。代替重定向到www.mydomain.com/login,它将转到webapp2.azurewebsites.net/login。

我对Azure应用程序网关还很陌生,但是我知道它会注入x-forwarded- *和x-original-host标头。我假设网关将更改重定向的url请求以更正域,或者Web应用程序上的配置将使用x-original-host代替。这些事情都没有发生。

是否可以配置Web应用程序或网关,以确保主机名在重定向时不会更改?如果使用具有经典IIS反向代理设置而不是应用程序网关的单独的Web应用程序/ VM,这种情况是否可以更好地工作?

1 个答案:

答案 0 :(得分:0)

当前,Application Gateway不会覆盖来自后端的响应。我们确实注入了X-Original-Host,您的应用程序应该使用它来将重定向URL正确写回到mydomain。

可以在here上找到在Web应用程序上配置URL重写的示例。可以找到将默认* .azurewebsites.net域重写为自定义域的示例here