无法突然连接到Amazon S3

时间:2015-07-23 07:58:50

标签: php curl amazon-web-services amazon-s3

我一直在使用此PHP class将图片上传到S3。这是一个示例代码:

 $s3 = new S3($awsAccessKey,$awsSecretKey);
 $s3upload= $s3->putObject(
        $s3->inputFIle($tmp_name, false),
        $s3BucketName,
        $filename,
        S3::ACL_PUBLIC_READ
     );

我突然发现这个错误:

Warning</b>:  S3::putObject(): [7] Failed to connect to bucketName.s3.amazonaws.com port 80: No route to host in <b>/S3.php</b> on line <b>355

我使用以下脚本检查卷曲设置,我可以获得整个谷歌页面,因此CURL应该没有任何问题

$ch = curl_init("http://google.com");    // initialize curl handle
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
$data = curl_exec($ch);
print($data);

任何使用该PHP类的人?你有没有遇到过这个问题?我怎样才能找出问题所在的位置?

2 个答案:

答案 0 :(得分:3)

当某些api调用过期时,可能会发生这种情况。我建议使用official php libraries。它们的工作方式与该库的工作方式几乎相同,但亚马逊程序员正在及时了解它们。

答案 1 :(得分:1)

我也会推荐官方的PHP库,它有很好的文档记录并且运行良好。

没有主机路由可能会建议您的服务器出现网络问题。

你能从服务器ping bucketName.s3.amazonaws.com吗?