配置Azure Web App进行网站重定向
今天要和大家聊的是Azure Web App的重定向问题。一般当我们使用Web App创建网站的时候,会有一个默认的sitename.azurewebsites.net域名形式的网站提供给我们。很多客户为了满足用户的使用需求会添加一个自定义域名。但往往这个域名添加了以后,还是可以使用原有的sitename.azurewebsites.net对网站进行访问。这个时候,我们就需要对原有的sitename.azurewebsites.net网站配置域名重定向(就是IIS的301重定向)。让访问原有域名的用户,重定向到我们自定义的地址。
除了上述场景之外,我们也可以使用这个重定向的功能来将某些特定的请求,重定向到我们希望用户访问的URL,来满足不同的使用需求。
若要在Azure Web App中实现重定向,我们需要将重定向规则添加到站点的 web.config 文件中即可。您可以通过将以下重写规则添加到 wwwroot 文件夹中的 web.config 文件来实现此目的。如果您没有 web.config 文件,则可以创建一个文件并将以下文本粘贴到其中,只需更改主机名以匹配您站点的主机名:
<configuration>
<system.webServer>
<rewrite>
<rules>
<rule name="Redirect rquests to default azure websites
domain" stopProcessing="true">
<match url="(.*)" />
<conditions logicalGrouping="MatchAny">
<add
input="{HTTP_HOST}"
pattern="^yoursite\.azurewebsites\.net$" />
</conditions>
<action type="Redirect"
url="http://www.yoursite.com/{R:0}" />
</rule>
</rules>
</rewrite>
</system.webServer>
</configuration>
基本上,我们告诉 IIS 接受主机名与正则表达式模式“^yoursite.azurewebsites.net$”匹配的任何请求,并返回 HTTP 301 响应。响应将包含最初请求的 URL,但它将指向您的自定义“www.yoursite.com”域。当用户的浏览器读取 301 响应和新 url 时,它将自动加载该新 url。它甚至会更改用户在地址栏中看到的地址。
具体的操作步骤,大家可以参考如下:
首先我们登录到Azure Portal,打开提前准备好的Web App,可以看到,我已经配置好了自定义域名:
若想配置web.config文件。我们需要进入kudu控制台,具体打开方式为点击“开发工具”—“高级工具”—“转到”:
进入Kudu控制台以后,点击“Debug Console”—“CMD”:
如果“wwwroot”文件夹下有web.config文件,则直接修改即可。若没有,可以点击“+”来创建一个web.config文件:
创建好以后,复制如下内容:
<configuration>
<system.webServer>
<rewrite>
<rules>
<rule name="Redirect rquests to default azure websites
domain" stopProcessing="true">
<match url="(.*)" />
<conditions logicalGrouping="MatchAny">
<add
input="{HTTP_HOST}" pattern="^www\.openops\.tech$" />
</conditions>
<action type="Redirect"
url="https://oai.azure.com/portal/336ef032b82441c69f96d65e4bdbc728/chat"
/>
</rule>
</rules>
</rewrite>
</system.webServer>
</configuration>
复制好以后,点击保存:
然后对Web App进行重启即可:
重启以后,测试访问web app,可以看到已经成功的进行重定向:
标签:Web,重定向,web,App,Azure,config From: https://blog.51cto.com/wuyvzhang/9145996