尝试使用copyObject命令(AWS S3)时出现以下错误。我正在使用AWS PHP SDK,这是代码:
PUT
https://s3-us-west-2.amazonaws.com/lms-courses/ideasfile.zip
执行“CopyObject”时出错 “https://s3-us-west-2.amazonaws.com/lms-courses/ideasfile.zip”; AWS HTTP错误:客户端错误:
404 Not Found
结果 在NoSuchKey
回复中:NoSuchKey
指定的密钥没有 exist.lalala.zipE698888(截断...) NoSuchKey(客户端):指定的密钥不存在。 -lms-courses
指定的密钥没有 exist.lalala.zipE698888912B810F7DfHtqN5Hls4hGdTGY / pVv36XZPzoM4mJ5fAdhJjEjDufNUArvKCrqN27SjiG06u5hnC8G8yPdzA =
我一直在努力解决这个错误。存储桶ideasfile.zip
存在,{{1}}也存在。我甚至手动将该文件添加到存储桶中,只是为了测试它 - 如果它没有正确上传或者其他东西。
我不明白为什么它说密钥不存在,当它显然存在时 - 我正在看它。
答案 0 :(得分:4)
错误表示源对象lalala.zip
不存在。您确定lms-courses/lalala.zip
存在吗?
根据Copy an Object Using the AWS SDK for PHP
// Copy an object.
$s3->copyObject(array(
'Bucket' => $targetBucket,
'Key' => $targetKeyname,
'CopySource' => "{$sourceBucket}/{$sourceKeyname}",
));