【发布时间】:2023-02-09 23:36:46
【问题描述】:
我有一个托管在 Azure 上的 Angular 应用程序。我的路由工作不正常,我得到了一个解决方案,该解决方案不可行但有效。 例如,我希望我的用户在开始使用银行应用程序之前先登录帐户。为此,当用户点击 URL MyBank.com/Login 时,它应该使用内部 Angular 路由,并且应该像这样显示登录按钮 login button
但是当我在 Azure 上托管时,它给我一个 404 错误,因为 Azure 在将请求传递到您的站点之前首先尝试确定路由,这意味着除根 URL 之外的任何内容都会失败。
解决此问题的快速而肮脏的方法是将错误文档路径设置为 index.html,这意味着当 Azure 找不到路由时,它将请求定向到 index.html 文档,该文档将呈现路由客户端。这种做法的缺点是浏览器也会报404错误,但至少请求的页面会呈现。 azure hack 这个 hack 工作正常,但它不是一个合适的解决方案。
现在问题来了:执行此类回退路由的正确方法是通过Azure CDN 的规则引擎但是现在我无法弄清楚我只希望我的 URL 仅在请求的 URL dosent 存在时才重定向的规则和条件。
【问题讨论】:
标签: angular azure angular-routing azure-cdn