如何将具有前端 SPA 的 Azure CDN 和具有 .Net Core WebApi 的 Azure WebApp 配置到同一自定义域?

2024-03-13

我想拥有https://example.com https://example.com作为我设置的 Azure CDN 的自定义域,并且https://example.com/api https://example.com/api作为其余 api 端点来捕获从我的 SPA 到提供数据的后端 .Net Core Web API 的所有调用。

如何在应用服务上设置自定义域来服务https://example.com/api https://example.com/api并为 Azure CDN 使用相同的自定义域来为所有前端 SPA 网页提供服务?

现在,我仅为应用服务配置了自定义域,但我想将前端 SPA 移动到 Azure CDN,以便为 Web API 释放尽可能多的资源。

预先感谢您,任何方向将不胜感激。


您可以介绍另一个资源,例如蔚蓝前门 https://learn.microsoft.com/en-us/azure/frontdoor/front-door-faq它可以充当代理并将 CDN 和您的应用服务隐藏在单个域后面。

Front Door 允许您配置路由规则,以便请求/api被路由到应用服务,并且静态资产的请求被路由到 CDN。

然后,您可以将 DNS CNAME 设置为 Front Door,所有请求都将发送到那里,而不是直接发送到 CDN 或您的应用服务。

这为您提供了无需担心 CORS 的优势,因为从外部角度来看,所有内容都来自同一域。

它还具有其他优点,例如允许您配置请求限制、SSL 终止和全局负载平衡等。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何将具有前端 SPA 的 Azure CDN 和具有 .Net Core WebApi 的 Azure WebApp 配置到同一自定义域? 的相关文章

  • 将 void* 作为函数调用而不声明函数指针

    我已经搜索过 但找不到任何结果 我的术语可能有问题 所以如果以前有人问过这个问题 请原谅我 我想知道是否有一种简单的方法可以调用void 作为 C 中的函数 无需首先声明函数指针 然后为函数指针分配地址 IE 假设要调用的函数是类型void
  • nUnit Assert.That(method,Throws.Exception) 不捕获异常

    有人可以告诉我为什么这个检查异常的单元测试失败了 显然我真正的测试是检查其他代码 但我使用 Int32 Parse 来显示问题 Test public void MyTest Assert That Int32 Parse abc Thro
  • Cypress Vue 组件测试从已挂载发出的事件

    我有一个 vue2 组件 它在其安装的生命周期挂钩中发出一个事件 该事件被发出 并且可以由使用该组件的页面处理 但是 我还想测试该事件是否在我的组件测试中发出 该测试使用赛普拉斯组件测试运行程序 这是一个精简版本 组件 TheCompone
  • 使用 Mono Cecil 添加 try-catch

    我正在使用 Mono Cecil 在另一个方法中注入代码 我想在我的代码周围添加一个 Try Catch 块 所以我写了一个带有 try catch 块的 HelloWorld exe 并反编译了它 Try Catch 的 Reflecto
  • M1 MacBook Pro 和 cmake 的编译错误

    我刚刚拿到了新的 M1 MacBook Pro 正在尝试编译大学工作所需的代码库 以下是我已采取的步骤 我使用 Rosetta 将终端设置为始终打开 安装的自制程序using bin bash c curl fsSL https raw g
  • 测试 WebApi 控制器时如何生成 Asp.net 用户身份

    我正在使用 Web API 2 在 web api 控制器中我使用过GetUserId使用 Asp net Identity 生成用户 ID 的方法 我必须为该控制器编写 MS 单元测试 如何从测试项目访问用户 ID 我在下面附上了示例代码
  • C++ 中“return *this”是什么意思?

    我正在将 C 程序转换为 C 但这部分让我感到困惑 return this 是什么意思 template lt EDemoCommands msgType typename PB OBJECT TYPE gt class CDemoMess
  • Task.WaitAll 保持循环

    我正在尝试这个异步代码只是为了测试 async 关键字 public async Task
  • fgets 和 fread 之间的区别

    我有以下代码 include
  • 不区分大小写“包含(字符串)”

    有没有办法让下面的返回为真 string title ASTRINGTOTEST title Contains string 似乎没有过载允许我设置区分大小写 目前我将它们都大写 但这很愚蠢 我指的是i18n http en wikiped
  • 使用 ASP.NET Core Identity 将令牌保存在 Cookie 中

    我想在我的 身份 生成的 cookie 中保存一些内容 我目前正在使用文档中的默认身份设置 启动 cs services Configure
  • C 错误:格式“%s”需要“char *”类型的参数,但参数 2 的类型为“char (*)[100]”

    过去几天我正在用 c 进行练习 并且收到此警告 如标题所示 我已经尝试了很多东西 但我真的不知道如何准确地解决这个问题 我不擅长编程 所以会有错误 以下是我正在使用的结构 无法更改 因为它们就是这样给出的 typedef struct bo
  • 如何声明和定义具有推导类型的静态成员?

    我需要定义一个具有复杂 许多模板参数 类型的静态成员 不是 constexpr 因此 希望有这样的东西 struct X static auto x makeObjectWithComplexType 但它不是 C 所以我尝试解决它 并认为
  • 非数字输入导致死循环

    由于某种原因 如果用户输入了错误的数据类型 例如 j 或 循环将停止要求输入并继续显示 Enter an integer gt 一遍又一遍 如何让程序处理错误的输入 为什么输入非数字值会导致如此奇怪的行为 define SENTINEL 0
  • 缓冲区溢出(与)缓冲区溢出(与)堆栈溢出[重复]

    这个问题在这里已经有答案了 可能的重复 堆栈溢出和缓冲区溢出有什么区别 https stackoverflow com questions 1120575 what is the difference between a stack ove
  • Azure:MissingRegistrationForLocation:未在位置“YYYY”中为资源类型“XXXX”注册订阅

    这最初是作为未找到订阅 https stackoverflow com questions 35071797 subscriptionnotfound the subscription resourcegroups could not be
  • MDI 窗体中的子窗口对接

    我有一个 MDI 表单和其中的一些子表单 我将子窗体停靠到 MDI 窗口的不同区域 但是当任何子窗体失去焦点时 其他停靠的窗体将重新排列 由于混乱 我准备了一组图像来展示该行为 Image1 单击任何窗口之前 Image2 点击窗口2后 问
  • 引用计数类和多线程

    我是多线程编程的新手 对此我仍然感到困惑 下面是我的引用计数类 class Rbuffer private char m pnData volatile unsigned int mRefCount public Rbuffer int n
  • ASP.Net Core 中没有智能感知

    通过 Visual Studio 安装 ASP Net Core gt 新项目 gt Web gt ASP Net Web 应用程序 gt 确定 gt ASP Net 5 模板 安装后重新启动系统 然后创建一个新项目ASP NET 5 Te
  • 为什么 typeof 函数在 C 中不起作用

    我使用GCC编译器 版本9 2 0 我想在 C 中使用 typeof 函数 但它会引发错误 错误 typeof 之前的预期表达式 如果您需要更多信息 请询问我 int a 5 double b the expected result is

随机推荐