Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/amazon-web-services/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/amazon-s3/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Amazon web services 当我点击";“在新选项卡中打开”;在我的S3图像上,它会下载图像_Amazon Web Services_Amazon S3 - Fatal编程技术网

Amazon web services 当我点击";“在新选项卡中打开”;在我的S3图像上,它会下载图像

Amazon web services 当我点击";“在新选项卡中打开”;在我的S3图像上,它会下载图像,amazon-web-services,amazon-s3,Amazon Web Services,Amazon S3,这是我的政策: { "Version": "2012-10-17", "Statement": [ { "Sid": "Allow All", "Effect": "Allow", "Principal": "*", "Action": [ "s3:GetObject", "s3:PutObject"

这是我的政策:

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Sid": "Allow All",
            "Effect": "Allow",
            "Principal": "*",
            "Action": [
                "s3:GetObject",
                "s3:PutObject"
            ],
            "Resource": "arn:aws:s3:::my-bucket/*"
        },
        {
            "Sid": "Deny All Actions On All But Media and Static Unless Defined User",
            "Effect": "Deny",
            "NotPrincipal": {
                "AWS": "arn:aws:iam::**********:root"
            },
            "Action": "s3:*",
            "NotResource": [
                "arn:aws:s3:::my-bucket/media/*",
                "arn:aws:s3:::my-bucket/static/*"
            ]
        }
    ]
}
所以基本上我有三个文件夹:
备份
静态
媒体
。“我的媒体”和“静态文件夹”中的所有对象都是公用的


但是,当我单击完整路径时,例如,此对象:
https://s3.us-east-2.amazonaws.com/my-bucket/media/x12wHSRoM9szjvY
(此obj实际上不存在,但路径格式相同)即使是图像,也没有.jpg或.png扩展名。这可能是我出现问题的原因吗?如果是,我如何解决这个问题,以便在单击原始对象时访问它而不下载它?

存储在Amazon S3中的对象也可以有。此元数据标识存储的文件类型,例如
image/jpeg

当上传文件时,它通常会设置元数据值,因此应该可以正常工作

但是,如果上载方法未设置元数据值,则浏览器无法知道文件的类型。然后它将提供下载文件而不是显示文件。(文件扩展名,如.png和.jpg,实际上并不设置文件类型。)


请参阅:

存储在AmazonS3中的对象也可以具有。此元数据标识存储的文件类型,例如
image/jpeg

当上传文件时,它通常会设置元数据值,因此应该可以正常工作

但是,如果上载方法未设置元数据值,则浏览器无法知道文件的类型。然后它将提供下载文件而不是显示文件。(文件扩展名,如.png和.jpg,实际上并不设置文件类型。)


请参阅:

您的桶策略正好相反。您已将
put
get
设置为公共,并覆盖媒体/静态私有。你需要反转设置。是的,这就是我想要的-默认为私有,但媒体和静态覆盖为公共。这部分工作正常。为什么您有
Deny
策略?默认情况下,bucket是私有的,直到有东西通过
Allow
授予访问权限。您的bucket策略正好相反。您已将
put
get
设置为公共,并覆盖媒体/静态私有。你需要反转设置。是的,这就是我想要的-默认为私有,但媒体和静态覆盖为公共。这部分工作正常。为什么您有
Deny
策略?默认情况下,bucket是私有的,直到有东西通过
Allow
授予访问权限。