1

我正在尝试将在我的本地计算机上运行的 PHP 脚本连接到 Swisscom S3 存储空间。该脚本使用 Amazon 的 S3 服务运行良好。

我是这样连接的:

static::$s3->client = \Aws\S3\S3Client::factory(array(
    'credentials' => array(
        'key'     => ['s3_aws_key'],
        'secret'  => ['s3_aws_secret'],
    ),
    'region'      => ['s3_aws_region'],
    'endpoint'    => ['s3_aws_endpoint'],
    'version'     => "2006-03-01",
    'signature'   => "v2"
));

我收到以下异常:

在 OSX 10.11.5、PHP 5.5.34 和 libcurl/7.43.0

"type": "Aws\\S3\\Exception\\S3Exception",
"code": 0,
"message": "Error executing "PutObject" on "https://ds31s3.swisscom.com/***/***/***.jpg"; AWS HTTP error: cURL error 56: SSLRead() return error -9806 (see http://curl.haxx.se/libcurl/c/libcurl-errors.html)"

在 Amazon EC2 实例上,例外情况有所不同:

"type": "Aws\\S3\\Exception\\S3Exception",
"code": 0,
"message": "Error executing "PutObject" on "https://ds31s3.swisscom.com/***/***/***.jpg"; AWS HTTP error: cURL error 56: TCP connection reset by peer (see http://curl.haxx.se/libcurl/c/libcurl-errors.html)"  

我应该看哪个方向的任何提示?正如我所说,使用 Amazon 运行脚本非常完美。

4

1 回答 1

0

好的 - 发现:

将 SDK 从 3.1.X 降级到 2.8.X 解决了这个问题。

于 2016-08-26T14:21:52.200 回答