将静态文件上传到 aws s3 存储桶后,css 中的 URL 不起作用

Posted

技术标签:

【中文标题】将静态文件上传到 aws s3 存储桶后,css 中的 URL 不起作用【英文标题】:Urls in css is not working after upload static files to aws s3 bucket 【发布时间】:2021-10-05 07:11:09 【问题描述】:

我制作了一个博客发布网站,并检查了不同的 cors aws 的配置,但其中任何一个都可以解决这个问题。问题是 css 文件中的 url,如

   @import url(fonts.css); background-image:
url("paper.gif");

并且像这些东西不起作用。而且在 控制台我收到这样的错误

net::ERR_ABORTED 403 (Forbidden)

所以任何 字体真棒图标也不起作用。你有什么建议吗 告诉我。

【问题讨论】:

这可能有助于***.com/questions/18724718/… 这些网络资产是从 S3 还是从您的网络服务器提供的?如果从 S3 提供,它们是公开的吗? @jarmod 是的,他们是公开的 【参考方案1】:

这是因为您在存储桶策略中阻止了其他 url。因此他们不允许任何其他 url 干扰您的存储桶对象。这个问题的解决方案是首先您必须做的是禁用阻止所有公共访问权限。然后将此添加到存储桶策略

    
    "Version": "2012-10-17",
    "Statement": [
        
            "Sid": "PublicReadGetObject",
            "Effect": "Allow",
            "Principal": "*",
            "Action": "s3:GetObject",
            "Resource": "arn:aws:s3:::dtblog/*"
        
    ]

那你可以走了。

【讨论】:

以上是关于将静态文件上传到 aws s3 存储桶后,css 中的 URL 不起作用的主要内容,如果未能解决你的问题,请参考以下文章