これは私の最初のPHPプロジェクトです。したがって、PHPはまったく分かりません。PHP S3クラスを使用したRequestTimeTooSkewedエラー
私がやっていることは、PHP S3クラスを使用してS3バケットにファイルをアップロードすることです。昨日のコードスニペットが昨日働いていましたが、今日もう一度作業を開始すると、まったく同じコードが動作しなくなりました。
今、私はちょうどのputObject関数によって返された次のエラーを取得:
Warning: S3::putObject(): RequestTimeTooSkewed The difference between the request time and the current time is too large. in /vagrant/LifeInYourWay/S3.php on line 222
を私はアメリカ/ニューヨークに私のサーバー時刻を変更して、サーバーの時間がエラーを引き起こしている可能性がありますいくつかの場所を読んでますがそれでも同じことが起こります。
私はPHPのコードは次のとおりです。
if(!class_exists('S3')) require_once('S3.php');
// AWS access
if(!defined('awsAccessKey')) define('awsAccessKey', '******');
if(!defined('awsSecretKey')) define('awsSecretKey', '******');
$s3 = new S3(awsAccessKey, awsSecretKey);
$imageName = $_FILES['imageFile']['name'];
$imageTempName = $_FILES['imageFile']['tmp_name'];
$imageLink = $_POST['imageLink'];
if(!strlen($imageLink) || $imageLink == 'http://'){
//create a new bucket
$s3->putBucket("widget-images", S3::ACL_PUBLIC_READ);
//move the file
$put = $s3->putObject($s3->inputFile($imageTempName), "widget-images", $imageName, S3::ACL_PUBLIC_READ);
if($put){
var_dump($put);
$imageUploaded = true;
}else{
$imageUploaded = false;
}
echo($imageUploaded);
}else $image = $imageLink;
ありがとうございました。私はタイムゾーンを変更しましたが、実際の時間を見ないと思っていました。それは約18分ぐらいだった。 –
私はlocalhost MAMPのインストールをやっています。私はS3にアップロードして今朝働いて、残りの日のうちにコンピュータをスリープ状態にして、これが起き始めました。 Apacheを再起動しても機能しませんでしたが、コンピュータを再起動しました。 –