Я установил пакет S3Client из эта ссылка.
Мой файл загружен в корзину успешно, но когда я копирую эффективное имя пользователя в браузере, я получаю и AccessDenied XML ошибка, как это изображение:
<?php
$s3 = new S3Client([
'version' => 'latest',
'region' => 'us-east-2',
'endpoint' => 'http://127.0.0.1:9000',
'use_path_style_endpoint' => true,
'credentials' => [
'key' => 'mykey',
'secret' => 'mysecret',
],
]);
try {
$key = 'samplekey';
$bucketName = 'bucketName';
$filePath = 'filePath';
$this->s3->putObject([
'Bucket' => $bucketName,
'Key' => $key,
'Body' => fopen($filePath, 'r'),
'ACL' => 'public-read',
]);
$fileUrl = $cmd = $this->s3->getCommand('GetObject', [
'Bucket' => $bucketName,
'Key' => $key
]);
$request = $this->s3->createPresignedRequest($cmd, '+1 minutes');
//Get the pre-signed URL
$signedUrl = (string)$request->getUri();
return $signedUrl;
} catch (S3Exception $e) {
throw new UploadFileException();
}
?>
Как я могу получить URL-адрес файла и скачать файл?
Задача ещё не решена.
Других решений пока нет …