首页 > 其他分享 >配置Azure Web App进行网站重定向

配置Azure Web App进行网站重定向

时间:2024-01-08 16:05:34浏览次数:35  
标签:Web 重定向 web App Azure config

配置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,可以看到,我已经配置好了自定义域名:

配置Azure Web App进行网站重定向_Azure

若想配置web.config文件。我们需要进入kudu控制台,具体打开方式为点击“开发工具”—“高级工具”—“转到”:

配置Azure Web App进行网站重定向_301重定向_02

进入Kudu控制台以后,点击“Debug Console”—“CMD”:

配置Azure Web App进行网站重定向_Azure Web APP_03

如果“wwwroot”文件夹下有web.config文件,则直接修改即可。若没有,可以点击“+”来创建一个web.config文件:

配置Azure Web App进行网站重定向_301重定向_04

创建好以后,复制如下内容:

<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>

复制好以后,点击保存:

配置Azure Web App进行网站重定向_301重定向_05

然后对Web App进行重启即可:

 

配置Azure Web App进行网站重定向_301重定向_06

重启以后,测试访问web app,可以看到已经成功的进行重定向:

 

配置Azure Web App进行网站重定向_Azure_07

 

标签:Web,重定向,web,App,Azure,config
From: https://blog.51cto.com/wuyvzhang/9145996

相关文章

  • Flask Web框架的使用-虚拟环境搭建
    FlaskWeb框架的使用-Flas框架的使用一、前言二、引言三、安装虚拟环境1.安装Virtualen2.创建虚拟环境3.激活虚拟环境一、前言个人主页:ζ小菜鸡大家好我是ζ小菜鸡,让我们一起来学习FlaskWeb框架的使用-虚拟环境搭建如果文章对你有帮助、欢迎关注、点赞、收藏(一键三连)二、引......
  • JavaScript WebAPI(三)(详解)
    这次介绍一下webAPI中的一些知识:回调函数回调函数是指如果将函数A做为参数传递给函数B时,我们称函数A为回调函数例如://立即执行函数中传递的函数是一个回调函数(function(){console.log("我是回调函数")})();//监听事件中传递的参数是一个回调函数constdiv=document......
  • JavaScript WebApi(二) 详解
    监听事件介绍事件监听是一种用于在特定条件下执行代码的编程技术。在Web开发中,事件监听器可以用于捕获和响应用户与页面交互的各种操作,如点击、滚动、输入等。事件监听的基本原理是,通过在特定元素上注册事件监听器,当事件在该元素上触发时,相应的处理函数会被执行。以下是事件监听的......
  • JavaScript WebApi 一(详讲)
    基础知识在前面的部分已经讲过了,大家如果没有学习过JavaScript的可以去看一下1.DOM引入在JavaScript中,DOM(文档对象模型)提供了一种表示和操作HTML文档的方式。在DOM中,文档被表示为一个由节点组成的树形结构。DOM对象则是这些节点的抽象表示,它们可以通过JavaScript来访问和操作。DOM......
  • 快麦ERP退货借助APPlink快速同步CRM
    什么是APPlink?APPlink是RestCloud打造的一款简单易用的零代码自动化集成平台,为业务流程提供自动化的解决方案,将企业内部的核心系统以及第三方应用程序和云服务等进行集成。无论是开发人员还是业务人员,都可以使用APPlink轻松的构建出高效、自动化的工作流,并将您的工作效率提升到一个......
  • uni-app+vue3+ts项目搭建完整流程
    项目代码同步更新至码云uni-vue3-ts-template开发前准备利用uni-app开发,有两种方法:通过HBuilderX创建(需安装HBuilderX编辑器)通过命令行创建(需安装NodeJS环境),推荐使用vscode编辑器这里我们使用第2种方法,这两种方法官方都有详细介绍点击查看官方文档vscode安......
  • 如何使用gin写一个web
    要使用Gin开发一个Web程序,可以按照以下步骤进行:安装Gin:首先,需要安装Gin框架。你可以通过在终端或命令提示符中运行以下命令来安装最新版本的Gin:shellgoget-ugithub.com/gin-gonic/gin创建Web程序:使用你喜欢的文本编辑器创建一个新的Go语言文件,例如main.go。导入必要的包:在main......
  • springboot项目中,Mapper接口映射xml文件出错问题,显示Invalid bound statement
    在进行springboot开发过程中遇到的一个问题,显示org.apache.ibatis.binding.BindingException:Invalidboundstatement(notfound);大概意思应该就是找不到Mapper接口对应的xml映射文件,检查了以后,发现应该是没有正确扫描到映射文件的路径。1.保证java文件夹下面的Mapper接口包名称......
  • 在app.vue created中使用screenfull一进入就自动触发全屏,无需手动点击
    要在Vue的 created 钩子中自动触发全屏模式,您可以使用 screenfull.request() 方法。但是,需要注意的是,用户通常期望有某种形式的交互(如点击事件)才会触发全屏模式。强制应用在页面加载时自动进入全屏模式可能会对用户体验产生负面影响。以下是一个简单的示例,展示了如何在Vue......
  • Android课程设计-安卓旅行日志APP+源代码+文档说明
    项目介绍简单的项目功能介绍:用户注册:邮箱填写、邮箱填写、密码填写、用户登录、用户忘记密码创建记事本:编写记事本、修改记事本、删除记事本、上传记事本数据管理:通过云服务器找回被删除的数据、本地笔记上传到云端、选择删除云端数据天气预报:获取用户当前位置的3天以内的天气情......