相关疑难解决方法(0)

如何将AWS S3中的所有对象默认公开?

我正在使用PHP库将文件上传到我的存储桶.我已将ACL设置为public-read-write,它工作正常,但该文件仍然是私有的.

我发现,如果我将受赠人更改为Everyone,则会将该文件公开.我想知道的是如何将我桶中所有对象默认Grantee设置为"Everyone".或者是否有其他解决方案默认公开文件

我正在使用的代码如下:

public static function putObject($input, $bucket, $uri, $acl = self::ACL_PRIVATE, $metaHeaders = array(), $requestHeaders = array()) {
    if ($input === false) return false;
    $rest = new S3Request('PUT', $bucket, $uri);

    if (is_string($input)) $input = array(
        'data' => $input, 'size' => strlen($input),
        'md5sum' => base64_encode(md5($input, true))
    );

    // Data
    if (isset($input['fp']))
        $rest->fp =& $input['fp'];
    elseif (isset($input['file']))
        $rest->fp = @fopen($input['file'], 'rb');
    elseif (isset($input['data']))
        $rest->data = $input['data'];

    // …
Run Code Online (Sandbox Code Playgroud)

amazon-s3 amazon-web-services

137
推荐指数
4
解决办法
8万
查看次数

标签 统计

amazon-s3 ×1

amazon-web-services ×1