【问题标题】:Angular Routes not working with cloudfront + s3Angular Routes 不适用于 cloudfront + s3
【发布时间】:2020-04-24 08:30:29
【问题描述】:

目前,我在云端的应用只加载应用启动时的默认路由。当我使用cloudfront.[address].net 访问站点根目录时它可以工作我还使用 WAF 将其限制为仅我的 IP 地址,但是当我访问 cloudfront.[address].net/signup 或 /login 时,我得到了

我怎样才能让子路由也起作用?我有我的存储桶政策

存储桶政策

{
 "Version": "2008-10-17",
 "Statement": [
     {
         "Sid": "3",
         "Effect": "Allow",
         "Principal": {
             "AWS": "arn:aws:iam::cloudfront:user/CloudFront Origin Access Identity E2SRF18SRG0FC7"
         },
         "Action": "s3:GetObject",
         "Resource": "arn:aws:s3:::[bucket]/*"
     }
 ]
}

我正在阻止所有公共访问,但我也在使用带有 OAI 的云端,所以我认为我不需要担心它会被阻止,因为它正在通过云端。

感谢您的帮助!

【问题讨论】:

    标签: angular amazon-s3 amazon-cloudfront


    【解决方案1】:

    你需要将cloudfront分发的错误文档设置为你的入口文档(index.html)

    请确保您已完成以下步骤。

    1. S3 存储桶策略仅允许 Cloudfront 执行 GetObject
    2. 对于 HTTP 404403 错误代码,Cloudfront 分发的自定义错误响应设置为 /index.html
    3. Cloudfront 分发处于 deployed 状态,因为 cloudfront 可能需要更长的时间,我们很容易犯观察错误

    希望这会有所帮助。

    【讨论】:

    • 我看到另一个 stackoverflow 帖子提到了这一点,所以已经添加了。这是我的配置截图postimg.cc/sG5nSZfp
    • 它可能不会做任何事情,但您可以将错误文档配置为 index.html 以及
    • 首先,你的云端部署完成了吗
    • 它已经设置为 index.html。请参阅postimg.cc/sG5nSZfp 以供参考。云端也已完全部署
    • 我在错误文档中添加了/,这似乎解决了它。谢谢!
    猜你喜欢
    • 1970-01-01
    • 2019-07-03
    • 2018-08-05
    • 1970-01-01
    • 2020-04-10
    • 2021-09-08
    • 2021-10-12
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多