2015-10-20 67 views
1

我已經配置隊列在Laravel 5.1使用Amazon SQS和它好工作的第一次,但後來它給以下錯誤:Laravel 5.1亞馬遜SQS:異常SignatureDoesNotMatch簽名過期

"Error executing \"SendMessage\" on \"queue_url\"; AWS HTTP error: Client error: 403 SignatureDoesNotMatch (client): Signature expired: 20151019T195353Z is now earlier than 20151020T101301Z (20151020T102801Z - 15 min.) - Sender SignatureDoesNotMatch Signature expired: 20151019T195353Z is now earlier than 20151020T101301Z (20151020T102801Z - 15 min.)"

好像關聯的時間戳因爲請求正在不斷使用。我如何在Laravel中配置它?

繼我怎麼排隊測試電子郵件:

/** 
* Send an e-mail reminder to the user. 
* 
* @param Request $request 
* @param int $id 
* @return Response 
*/ 
public function sendEmailReminder(Request $request, $id) 
{ 
    $user = User::findOrFail($id); 

    // $this->dispatch(new SendReminderEmail($user)); 
    try { 
     Mail::queue('emails.reminder', ['user' => $user], function ($m) use ($user) { 
      $m->to($user->email, $user->name)->subject('Your Reminder!'); 
     }); 
    } catch (Exception $ex) { 
     throw ($ex); 
    } 
} 

配置:

'sqs' => [ 
     'driver' => 'sqs', 
     'key' => 'key', 
     'secret' => 'secret', 
     'queue' => 'https://sqs.us-east-1.amazonaws.com/xxxx/jobs[queue_name]', 
     'region' => 'us-east-1', 
    ], 

回答