【问题标题】:Laravel Mail Not Sending Via QueueLaravel 邮件未通过队列发送
【发布时间】:2014-08-04 23:19:39
【问题描述】:

我刚刚在我的服务器上设置了 beanstalkd / supervisor 配置。队列正在工作,但是当我尝试结合使用 Laravel 的邮件功能时,电子邮件没有发送。

我确实使用 gmail 发送邮件,在我的其他正常代码中使用 Mail::send 时这不是问题。当我通过队列尝试时,它似乎只是不发送。

路线:

Route::get('/', function() {

  $test = "my name";

  Queue::push('DuplicateAccount', $test);  

});

类:

class DuplicateAccount {

  public static function fire($job, $data) {

    self::send($data);

    $job->delete();

  }

  public static function send($data) {

    $admin = 'MyEmail';

    Mail::send('emails.admin.duplicate', array('duplicate'=>$data), function($message) use ($admin) {
      $message->to($admin, 'MyName')->subject('Subscription Duplicate');
    });

    Log::info('a. Mail '.$data.' to '.$admin.'.');

  }

}

【问题讨论】:

  • 错误是什么?您可以简单地使用Mail::queue('emails.welcome', $data, function($message){...}); 以及Check Here
  • 我也尝试使用 Mail::queue,但仍然没有发送任何内容。 Mail::send 可以,但是在批量发送的时候真的不好用。

标签: php email laravel queue


【解决方案1】:

我认为你需要启动队列监听器

php artisan queue:listen

请访问链接(http://laravel.com/docs/queues#running-the-queue-listener)

【讨论】:

  • 对不起,我已经设置好了。邮件驱动程序显然存在问题。我改成 smtp 就可以了。
【解决方案2】:

我的邮件驱动程序设置显然存在问题。在处理队列电子邮件的序列化时,很可能是 gmail 和我的 php.ini 配置的问题。

我改成 smtp,它开始工作了。

【讨论】:

  • 你能说说php.ini文件的哪一行吗?因为我无法访问邮件模板中的用户模型。我必须单独 paas 数据。
猜你喜欢
  • 1970-01-01
  • 2018-04-20
  • 2021-05-12
  • 2021-04-29
  • 2016-08-31
  • 2018-02-06
  • 2022-08-13
  • 2014-04-09
  • 1970-01-01
相关资源
最近更新 更多