reactjs - 静态托管 - 使用 Azure CDN 在 Azure Blob 存储上的 ReactJS 应用
问题描述
我想将我的ReactJS 应用程序作为静态托管在 Azure Blob 上。问题是 Azure Blob 不支持默认文档。为了克服这个问题,我设置了带有 URL 重写规则的 Azure CDN
- 对于第一个源模式,设置为
((?:[^\?]*/)?)($|\?.*)
- 对于第一个目标模式,设置为
$1index.html$2
- 对于第二个源模式,设置为
((?:[^\?]*/)?[^\?/.]+)($|\?.*)
- 对于第二个目标模式,设置为
$1/index.html$2
这是来自郝的教程
这成功解决myapp.azureedge.net
了,但是当直接使用客户端路由时,例如myapp.azureedge.net\react\route
应用程序将返回ResourceNotFound
.
这意味着当用户输入myapp.azureedge.net\react\route
他的 URL 并尝试导航到该页面时,他会收到一个错误。
我怀疑我需要将每个路径(不是静态特定文件)重定向到index.html
. 但是,我不知道这是否是正确的解决方案或如何实现
感谢您的任何帮助!
解决方案
Azure CDN 现在支持静态网站托管。更多信息在这里:
https://docs.microsoft.com/en-us/azure/storage/blob/storage-blob-static-website
通过将默认文档和错误文档设置为index.html
推荐阅读
- c# - jquery ajax 发布数据在控制器处始终为 Null
- android - 用于延迟加载 RecyclerView 的 ScrollToPosition
- java - Kotlin BigInteger 到 BigDecimal 的转换
- asp.net-mvc - 为什么在 MVC/API 应用程序中从 URL 中删除控制器后缀
- callback - 奇怪的回调调用语法(需要解释)
- python - 将 virtualenv 移动到另一台具有不同 python 版本的 PC
- reactjs - 在构造函数中与在构造函数外声明 React 状态
- c - C 函数 (fgets) 缓解
- clojure - `loop` 和 `with-redefs` 不能很好地配合使用
- c++ - 如何为模板类的成员结构重载 ostream