我正在尝试连接到AWS版本3 SDK存储桶。
但是,我收到以下错误:
PHP致命错误:未捕获的异常'Aws \ S3 \ Exception \ S3Exception',消息'错误执行“PutObject”在“https://s3.oregon.amazonaws.com/my-buekct-test/hello_world.txt”上; AWS HTTP错误:cURL错误6:无法解析主机:s3.oregon.amazonaws.com(请参阅http://curl.haxx.se/libcurl/c/libcurl-errors.html)'
这是我的代码,很简单。
<?php
header('Content-Type: text/plain; charset=utf-8');
// Include the SDK using the Composer autoloader
require 'vendor/autoload.php';
$s3 = new Aws\S3\S3Client([
'region' => 'Oregon',
'version' => 'latest',
'credentials' => [
'key' => 'Enter the key',
'secret' => 'Enter the Secret key'
]
]);
// Send a PutObject request and get the result object.
$key = 'hello_world.txt';
$result = $s3->putObject([
'Bucket' => 'my-buekct-test',
'Key' => $key,
'Body' => 'this is the body!'
]);
// Print the body of the result by indexing into the result object.
echo $result['Body'];
我正在使用AWS centos,php 5.5.21,apache 2.4.10
你能指出我哪里出错吗?
答案 0 :(得分:6)
尝试使用以下代码,只需更改区域
<?php
header('Content-Type: text/plain; charset=utf-8');
// Include the SDK using the Composer autoloader
require 'vendor/autoload.php';
$s3 = new Aws\S3\S3Client([
'region' => 'us-west-2',
'version' => 'latest',
'credentials' => [
'key' => 'Enter the key',
'secret' => 'Enter the Secret key'
]
]);
// Send a PutObject request and get the result object.
$key = 'hello_world.txt';
$result = $s3->putObject([
'Bucket' => 'my-buekct-test',
'Key' => $key,
'Body' => 'this is the body!'
]);
// Print the body of the result by indexing into the result object.
echo $result['Body'];
&#39;区域&#39; =&GT; &#39; us-west-2&#39;,//这件事我只更新了
您可以在此处找到aws的地区信息:http://docs.aws.amazon.com/general/latest/gr/rande.html#s3_region
希望这会有所帮助!