Я не могу выполнить этот код на SDK 2. * с браузером;
<?php
header('Content-type: text/plain; charset = utf-8');
require 'aws-autoloader.php';
use Aws\S3\S3Client;
require 's3_config.php'; // credentials vs.
$time_start = microtime(true);
#----------------------------------------------------#
$bucket = time()."unique_bucket_id";
echo "Creating bucket named {$bucket}\n";
$result = $client->createBucket(array(
'Bucket' => $bucket
));
// Wait until the bucket is created
$client->waitUntilBucketExists(array('Bucket' => $bucket));
echo "Created {$bucket}\n";
#-------------------------------------------------------#
$time = microtime(true)-$time_start;
echo PHP_EOL.PHP_EOL.$time.PHP_EOL;
но он работает четко в терминале.
Что я должен сделать для работы с браузером?
(Когда я изменяю коды в соответствии с php sdk 1.6.2, он работает как с терминалом, так и с браузером. Я имею в виду, что проблем с разрешениями нет.)
При запуске из cli домашний каталог устанавливается в среде как домашний каталог пользователя, в который вы вошли. /home/your_username
В сети установлен другой домашний каталог, обычно это веб-сервис.
Вы можете проверить, запустив echo getenv('HOME');
как в Cli и Web, и создать .aws/credentials
файл в соответствующих каталогах.
Других решений пока нет …