Ben*_*rey 15 azure static-site azure-storage-blobs single-page-application azure-cdn
我已经$web
按照 Microsoft 文档中的建议,使用容器成功地在 Azure Blob 存储上建立了一个静态网站。另外,我已经定义index.html
了两种的“索引文件名称”和“错误文件名”。这是因为我希望我的 JavaScript 应用程序处理404
响应。
但是,当查看 Chrome 中的网络选项卡时,我可以看到404
为我请求的 URL 抛出了a ,尽管该页面实际上可以正常工作。
我的理论如下:
404
并将 URL 重写为“错误文档名称”,即index.html
在我的情况下(因此我的页面仍然有效)我的问题是我的网址是干净的网址,例如:
/activities/some-slug
永远不会作为文件存在,这只是告诉我的 JavaScript 应用程序在哪里路由请求,即加载什么视图。
需要明确的是,该页面确实有效,因为它仍在将404
错误路由到index.html
.
我怎样才能告诉 Azure blob 只将所有内容路由到index.html
并让我的应用程序在404
必要时抛出?
我们确实已经设置了 Premium Verizon CDN,因为我最初不知道 Azure Blob 上的静态网站选项。如果 CDN 是最佳途径,请您提供有关如何配置 CDN 以提供我想要的内容的说明吗?
我已经阅读了很多文章(特别是这篇文章中的评论),我相信可能有各种解决方案,即 Azure Functions、代理、CDN 等。也就是说,没有一个提供关于如何使用这些特定服务的明确说明。
我通常在 AWS 上工作,因此并不熟悉所有 Azure 服务和可用配置。
And*_*ndl 25
我想我找到了解决方案
条件:URL 文件扩展名
一种。操作员:小于
湾 分机:1
C。案例转换:无转换
[这基本上意味着请求的 URL 没有文件(扩展名),而是应用程序的路由,将由应用程序路由处理]
行动:URL 重写
一种。源模式:/
湾 目的地:/index.html
C。保留不匹配的路径:否
.
感谢 Andreas Wendl https://github.com/MicrosoftDocs/azure-docs/issues/43257#issuecomment-580668444
这是一个更简单/可能更正确的解决方案:
/static/*
吧/index.html
因此,index.html 是为了响应诸如 之类的深层链接而提供/users/
的/users/alexa.siri
。
归档时间: |
|
查看次数: |
3345 次 |
最近记录: |