我正在尝试在不同区域的2个S3存储桶之间复制文件:
US_EAST_1 ---> EU_CENTRAL_1
使用以下命令:
s3client.copyObject(sourceBucket, sourceFile, DestBucket, DestFile);
我启动了s3client而没有提供允许它与两个区域一起工作的区域,但是我收到以下错误:
引起:com.amazonaws.services.s3.model.AmazonS3Exception:The 你试图访问的存储桶必须使用 指定的端点。请将以后的所有请求发送到此端点。 (服务:Amazon S3;状态代码:301;错误代码:PermanentRedirect; 请求ID:C2E6D084FF257437),S3扩展请求ID: rXDTuqPSCCKWoF8luScpL + / + po93oEQC2VSNUBQtSLBh5q8yEAO0WwK8FnBMPGEZQjS = zwkkHWBg 在 com.amazonaws.http.AmazonHttpClient.handleErrorResponse(AmazonHttpClient.java:1305) 在 com.amazonaws.http.AmazonHttpClient.executeOneRequest(AmazonHttpClient.java:852) 在 com.amazonaws.http.AmazonHttpClient.executeHelper(AmazonHttpClient.java:630) 在 com.amazonaws.http.AmazonHttpClient.doExecute(AmazonHttpClient.java:405) 在 com.amazonaws.http.AmazonHttpClient.executeWithTimer(AmazonHttpClient.java:367) 在 com.amazonaws.http.AmazonHttpClient.execute(AmazonHttpClient.java:318) 在 com.amazonaws.services.s3.AmazonS3Client.invoke(AmazonS3Client.java:3787) 在 com.amazonaws.services.s3.AmazonS3Client.copyObject(AmazonS3Client.java:1530) 在 com.amazonaws.services.s3.AmazonS3Client.copyObject(AmazonS3Client.java:1487)
我正在使用'aws-java-sdk'版本:'1.11.7'
如何克服此错误?
答案 0 :(得分:7)
客户端无法配置为"在两个区域都工作"。它必须配置一个区域,以便它在一个区域内工作。
在存储桶之间(区域之间)复制对象时,请将客户端设置为目标区域。然后,指定源和目标存储区。