将默认的azure网站重写为自定义域

时间:2018-10-10 17:57:25

标签: c# azure swagger azure-web-sites azure-web-app-service

我在Azure上托管的Web应用程序(使用swagger的REST服务)很少,其默认域为https://xyz-test.azurewebsites.net/swagger/ui/index。 我需要将它们重写为自定义域(已经存在),例如:newdomain.net 我尝试将以下内容添加到web.config:

<rewrite>
  <rules>
    <rule name="Redirect requests to default azure websites domain" stopProcessing="true">
      <match url="(.*)"/>
      <conditions logicalGrouping="MatchAny">
        <add input="{HTTP_HOST}" pattern="^xyz\.azurewebsites\.net$"/>
      </conditions>
      <action type="Rewrite" url="https://newdomain.net/{R:0}" appendQueryString="true" redirectType="Permanent"/>
    </rule>     
  </rules>
</rewrite>

此代码将重定向到newdomain.net,但是,如果我尝试执行 newdomain.net/swagger ,则会抛出404错误。 我是新来的。

正确的方法应该是什么,以便我应该能够使用https://xyz-test.azurewebsites.net/swagger/ui/index进行API调用,而不是使用https://newdomain.net/xyz-test/swagger/ui/index

(注意:mydomain.com将由多个服务使用。 例如:https://newdomain.net/abc-test/swagger/ui/index

1 个答案:

答案 0 :(得分:0)

您需要将mydomain.com指向具有CNAME DNS记录的Azure网站。为此,请参见以下链接:Tutorial: Map an existing custom DNS name to Azure Web Apps

一旦CNAME到位(并在DNS中传播),您就可以使用不同的路径来管理不同的Web应用程序。

此外,如果您想要精细的路径/ URL管理,则可以使用Application Gateway使用多站点侦听器来路由特定的URL或路径。