You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何为Azure VM上的ASP.Net网站配置Let's Encrypt SSL并实现流量转发

实现域名请求先到Web App再转发至VM的方案

第一步:把GoDaddy域名指向Azure Web App

  • 登录GoDaddy域名管理后台,找到DNS管理页面
  • 删除原来指向VM公网IP的A/CNAME记录
  • 新增一条CNAME记录:主机名填www,值填你的Web App默认域名(格式是<你的Web App名>.azurewebsites.net)
  • 保存后等5-15分钟DNS生效,用nslookup www.example.com验证是否指向Web App地址

第二步:给Web App配置反向代理,转发请求到VM

方法一:修改Web.config(适合ASP.NET类Web App)

  1. 打开Web App的Kudu控制台(地址是https://<你的Web App名>.scm.azurewebsites.net)
  2. 找到根目录的web.config文件,编辑添加反向代理规则:
<system.webServer>
  <rewrite>
    <rules>
      <rule name="ForwardToVM" stopProcessing="true">
        <match url="(.*)" />
        <action type="Rewrite" url="http://<VM公网IP或域名>/{R:1}" />
      </rule>
    </rules>
  </rewrite>
</system.webServer>
  • 要是VM用HTTPS,就把http://换成https://;另外得把Web App的所有出站IP加到VM的NSG入站允许规则里(Web App的出站IP在门户的「网络」->「出站IP地址」里能看到)

方法二:使用Application Request Routing扩展(更灵活)

  1. 在Azure门户进入你的Web App,点击「扩展」->「添加」,搜索Application Request Routing并安装
  2. 安装完成后进入扩展配置页,把后端目标设成VM的公网IP或域名,配置好路径转发规则
  3. 保存配置后,Web App就会自动把所有请求转发到VM

第三步:验证转发是否正常

  • 访问https://www.example.com,查看页面能否正常加载
  • 进入Web App的「监控」->「日志流」查看日志,确认请求确实被转发到VM

额外提醒

  • 给VM配置静态公网IP,避免IP变动导致转发失效
  • 如果VM需要获取客户端真实IP,得在反向代理配置里添加X-Forwarded-For这类请求头,让ASP.NET网站能拿到真实IP
  • 用Web App的Let's Encrypt扩展自动续期证书,省去手动更新的麻烦

内容的提问来源于stack exchange,提问作者Mansour Shaaban

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.06 22:05:23