我现在已经在 CDN 中成功设置了我的静态网站, 有没有办法指定index.html是默认文档? 这是一个 1 页网站,我只想浏览到根 url,而不必输入 /index.html ..
谢谢你
根据您的上一个问题,我假设您已将 CDN 设置为映射到 Blob 存储。如果这是正确的,那么遗憾的是,到目前为止这是不可能的,因为 Azure 存储不支持默认文档。这是 Azure 反馈上最受欢迎的功能之一 - https://feedback.azure.com/forums/217298-storage/suggestions/1180039-support-a-default-blob-for-blob-storage-containers仍在等待中。
如果需要,您可以创建一个适当的网站(而不是在 blob 存储中使用此 index.html 文件)并通过 CDN 提供该网站。您可以在这里找到更多详细信息:https://azure.microsoft.com/en-in/documentation/articles/cdn-websites-with-cdn/。
微软正在努力解决这个问题。目前你只有两种可能来解决这个问题:
使用高级 CDN 如果您购买了 Verizon CDN 的高级版本,则可以创建自定义重写规则。您可以在 CDN 端点的“高级功能”部分找到它。单击“管理”后,您将被重定向到门户之外,您可以在其中管理您的 CDN。
您必须创建这样的重定向规则:
要检查重定向规则是否有效,您可以安装 IIS 并激活 URL 重写模块。在重写模块中,您可以测试您的规则。
请注意,如果您测试您的模式,它必须以 CDN 源路径(数字)和端点名称(如 /829292/movies)开头。
有时,重定向规则会导致 CDN 清除出现问题。您可以通过在规则中添加 if 子句来解决此问题,该子句表示重定向仅在不是清除代理时才应处于活动状态。
正如@KyleMit所说,可以使用Azure上的静态网站配置存储帐户 在存储帐户的静态网站配置中,您必须将index.html设置为“索引文档名称”和“错误文档路径”
确实,你必须将所有路由机制委托给你的SPA(Angular/React...),包括页面未找到错误