Laravel的Mailgun不工作?

时间:2016-09-29 09:29:17

标签: php laravel mailgun

我正在寻找一些问题的答案。我真的不知道我的设置或代码是什么错,但我无法发送电子邮件。

以下是我的mail.php

'driver' => 'mailgun',
'host' =>  'smtp.mailgun.org',
'port' => 587,
'from' => array('address' => 'here is my email', 'name' => 'Some name here'),
'encryption' => 'tls',
'username' => null,
'password' => null,
'sendmail' => '/usr/sbin/sendmail -bs',
'pretend' => false,

以下是services.php

'mailgun' => array(
'domain' =>'my domain here' ,
'secret' => 'my secret key here',
),

以下是我发送的代码。

$data = array(
                'msg'   =>  'You have successfully registered ',
                'url'   =>  'someURL'
            );          
try{
    Mail::send('emails.REGISTRATION_SUCCESS', $data, function($message){
    $message->from('admin@something.com', 'y System');
    $message->to('myemail@gmail.com')->subject(' Registration Successful!');
    });
   }catch(Exemption $e){echo $e->getMessage();} 
   echo 'hello';

每次运行代码时都会遇到此错误。

  

Class' GuzzleHttp \ Client'找不到

我真的不知道这段代码在哪里我错了。我现在被困住了。它仍然没有发送任何电子邮件。我现在真的不知道。请帮我。我正在看一些教程和几乎相同的问题帖子,但没有任何工作。有什么建议吗?

3 个答案:

答案 0 :(得分:0)

"guzzlehttp/guzzle": "~5.3|~6.0"文件中

require部分添加此composer update,然后composer require "guzzlehttp/guzzle": "~4.0"添加> body { background-image: url("IMAGE URL"); background-position: 0; background-size: 50% 100%; background-repeat: no-repeat; } 以获取更多信息点击here  或者只是在laravel根文件夹的终端上运行"INSERT INTO USER (username, address) VALUES (:username,:address) ON DUPLICATE KEY UPDATE username = username"

答案 1 :(得分:0)

来自Laravel mail documentation

  

驱动程序先决条件

     

基于API的驱动程序(如Mailgun和SparkPost)通常比SMTP服务器更简单,更快捷。如果可能,您应该使用其中一个驱动程序。 所有API驱动程序都需要Guzzle HTTP库,可以通过Composer包管理器安装:

     

composer require guzzlehttp/guzzle

答案 2 :(得分:0)

就像@Martin建议的那样

$ composer require guzzlehttp/guzzle
从项目路径的命令行

这将安装所需的包。另请参阅guzzle github link

以防万一,你是直接在制作上做的(这真的很危险),你可以按照@bashar的回答。