如何为 amazon s3 服务器设置互联网代理

How to set internet proxy for amazon s3 server

如何为亚马逊设置互联网代理 s3.i 收到 警告:S3::putObject(): [7] 连接主机失败,E:[=22 中没有错误=].php 行 363.我知道这是因为代理相关 issue.but 我不知道如何在下面的 S3.given 中添加代理是我的代码。

index.php

<?php
require 's3.php';
$s3 = new S3('ACCESS_KEY_ID', 'SECRET_ACCESS_KEY');
$new_name = time(). '.txt';
S3::putObject(
    $s3->inputFile('upload-me.txt',false),
    'bucket name',
    $new_name,
    S3::ACL_PUBLIC_READ,
    array(),
    array(),
    S3::STORAGE_CLASS_RRS   
  );

?>

s3.php which is i downloaded from here

提前致谢:

使用方法setProxy

S3::setProxy('127.0.0.1:1234');

如果您静态调用 putObject 方法,您也应该静态设置凭据:

S3::setAuth('ACCESS_KEY_ID', 'SECRET_ACCESS_KEY');

另一方面,如果您想直接通过 AWS SDK 执行此操作,请参阅 client configurations 页面上的 "Using a proxy" 部分。

$s3Client = S3Client::factory(array(
    'request.options' => array(
        'proxy' => '127.0.0.1:1234'
    )
));

$credentials = new Credentials('ACCESS_KEY_ID', 'SECRET_ACCESS_KEY');
$s3Client->setCredentials($credentials);

$s3Client->putObject(array(
 ...
));