azure - 如何使用 Azure CDN 将 azurewebsites 根 url 用于我的 blob 存储文件 url?

标签 azure azure-web-app-service azure-blob-storage cdn azure-cdn

我已经创建了 blob 存储并上传了我的 index.html 文件。

文件网址类似于 - https://myaccount.blob.core.windows.net/mycontainer/demopage.html

我有一个网络应用https://mycompanydemo.azurewebsites.net/

我正在使用 iframe 将 index.html 从 Blob 存储渲染到我的 Web 应用程序。

渲染后我想显示 url 预期输出 -

https://mycompanydemo.azurewebsites.net/demopage.html

为此,我创建了 cdn 端点并将其配置在 blob 存储中。

仍然不确定如何才能实现上述网址结果。我也尝试配置 CNAME/DNS 设置,但在 CDN 端点内添加自定义域时 mycompanydemo.azurewebsites.net

它给出了类似的错误

we could not finf DNS record for mycompanydemo.azurewebsites.net that points to newcdn.azureedge.net

正如我提到的,我的最终目标是 https://mycompanydemo.azurewebsites.net/demopage.html,它显示来自 blob 存储的 demopage.html。

最佳答案

• 是的,您当然可以在 Azure CDN 端点中使用“index.html”blob 文件。为此,您必须按照您在帖子中所述相应地创建 Azure CDN 配置文件和端点。由于您已创建上述所需内容并尝试配置 Azure 托管域以映射到 Azure CDN 端点,因此您必须为该域创建一些 DNS 记录以重定向或指向创建的 Azure CDN 端点并显示 blob 文件旨在服务。

此外,您还希望将对此 Web 应用程序页面 URL“https://mycompanydemo.azurewebsites.net/demopage.html”的请求重定向到托管 blob 文件的 Azure CDN 终结点,即“https://mycompanydemo.azurewebsites.net/demopage.html”/newcdn.azureedge.net'。为此,您必须为“mycompanydemo.azurewebsites.net”Webapp 页面子域到“newcdn.azureedge.net”Azure CDN 终结点域创建 CNAME DNS 记录。由于两者都是没有发布公共(public) IP 地址的 DNS 标签,并且都属于 Azure DNS,因此您必须在 Azure 中创建一个私有(private) DNS 区域,您应该能够在其中创建所需的 CNAME 记录并创建别名 DNS 重定向到所需的 Azure FQDN,如下所示:-

Azure DNS zones

完成上述操作后,您将不会再遇到以下错误,即“我们找不到指向“newcdn.azureedge.net”的“mycompanydemo.azurewebsites.net”的 DNS 记录''。

• 此外,正如您在评论中所述,您无法使用应用程序网关实现上述目的,因为您希望通过 Azure webapp URL 将流量重定向到 Azure CDN 端点,但应用程序网关充当传入流量的负载均衡器并根据定义的规则将流量分发到后端端点。因此,您需要使用 Azure DNS 区域来实现此目的。

请参阅下面的文档链接以获取有关上述内容的更多信息:-

https://learn.microsoft.com/en-us/azure/cdn/cdn-add-to-web-app

https://learn.microsoft.com/en-us/azure/cdn/cdn-map-content-to-custom-domain?tabs=azure-dns%2Cazure-portal%2Cazure-portal-cleanup

关于azure - 如何使用 Azure CDN 将 azurewebsites 根 url 用于我的 blob 存储文件 url?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/71912701/

相关文章:

c# - 在本地运行 Azure Functions 显示找到 1 个函数,但加载了 0 个函数,并且该函数不起作用

c# - 加密 Azure Function 中的服务总线连接字符串

c# - 在 Azure 应用服务中哪里可以找到我的日志?

azure - 在Azure App Service上部署多个Web应用程序..这有什么影响吗

c# - 如何使用 C# 获取 Azure Blob 存储容器中现有目录的列表?

asp.net - 通过azure媒体服务.NET SDK将视频上传到azure blob存储

azure - 在azure中部署节点应用程序时出错

C#.net Core 6.0 Web 应用程序使用文件中的 RSA key 从 Azure 连接到 Snowflake

azure - 500(URL 重写模块错误。)文件已存在

azure - Windows Azure 本地 Blob 存储访问?