Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/289.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/1/amazon-web-services/14.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
使用新的PHP SDK更新AWS S3项目ACL_Php_Amazon Web Services_Amazon S3_Guzzle - Fatal编程技术网

使用新的PHP SDK更新AWS S3项目ACL

使用新的PHP SDK更新AWS S3项目ACL,php,amazon-web-services,amazon-s3,guzzle,Php,Amazon Web Services,Amazon S3,Guzzle,如何使用新的AWS S3 PHP SDK使用“公共读取”更新S3中的项目:似乎只有获取和放置才可能 迭代器返回一个数组,而不是一个类。Get对象返回一个类,但没有明显的更新方法。CopyObject看起来有点像黑客 $s3->copyObject(array( 'Bucket' => 'media', 'Key' => $k, 'CopySource' => 'media'.'/'.$k,

如何使用新的AWS S3 PHP SDK使用“公共读取”更新S3中的项目:似乎只有获取和放置才可能

迭代器返回一个数组,而不是一个类。Get对象返回一个类,但没有明显的更新方法。CopyObject看起来有点像黑客

$s3->copyObject(array(
        'Bucket'     => 'media',
        'Key'        => $k,
        'CopySource' => 'media'.'/'.$k,
        'ACL'        => 'public-read',
));
返回:

PHP Fatal error:  Uncaught Aws\S3\Exception\InvalidRequestException: AWS Error Code: InvalidRequest, Status Code: 400, AWS Request ID: FC630F89A049823A, AWS Error Type: client, AWS Error Message: This copy request is illegal because it is trying to copy an object to itself without changing the object's metadata, storage class, website redirect location or encryption attributes., User-Agent: aws-sdk-php2/2.5.3 Guzzle/3.8.1 curl/7.35.0 PHP/5.5.9-1ubuntu4.4 thrown in /.../vendor/aws/aws-sdk-php/src/Aws/Common/Exception/NamespaceExceptionFactory.php on line 91

迟做总比不做好

$s3Client->putObjectAcl(array(
    'Bucket'     => 'yourbucket',
    'Key'        => 'yourkey',
    'ACL'    => 'public-read'
));