2011-10-13 13 views
8

Este es mi primer proyecto PHP, así que realmente no conozco PHP en absoluto.RequestTimeTooSkewed Error al utilizar PHP S3 Clase

Lo que intento hacer es cargar un archivo en un cubo S3 utilizando la clase PHP S3. Un fragmento de código de ejemplo funcionaba ayer, pero cuando comencé a trabajar con él nuevamente hoy, casi el mismo código dejó de funcionar.

Ahora sólo sale el siguiente error devuelto por la función 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

leí algunos lugares que la hora del servidor podría ser la causa del error, de modo he cambiado de hora del servidor a América/New_York pero todavía obtener lo mismo.

El código PHP que tengo es: ajuste del reloj o la zona horaria

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; 

Respuesta

16

de la computadora es incorrecta. Debido a que S3 usa la hora actual para autenticar solicitudes, si su reloj está apagado por más de 15 minutos, o si su zona horaria es incorrecta (lo que lleva a un sesgo de horas), sus solicitudes fallarán.

+0

Gracias. Cambié la zona horaria, pero no pensé en mirar el tiempo real. Fue alrededor de 18 minutos de descuento. –

+0

Estoy trabajando en una instalación localhost MAMP. Tuve cargas en S3 trabajando esta mañana, puse mi computadora a dormir por el resto del día y esto comenzó a suceder. Reiniciar apache no funcionó, pero reiniciar mi computadora sí. –

Cuestiones relacionadas