我正面临发送电子邮件的问题。我的网站是用Laravel构建的。我正确设置了文件。这发生在2个文件中。
第一个包含“驱动程序”,当然是mailgun,“host”(smtp.mailgun.org),“port”(587并根据我的提供商打开),“encryption”(tls),“username “和”密码“(两者都有正确的值)。
第二个包含“域名”和“秘密”(也都包含正确的值)。
域名不是mailgun域,而是我自己的域,在设置域验证和DNS后处于ACTIVE状态。
mailgun域仍然存在ACTIVE。我不知道是否必须删除它或其他东西。我真的不知道我在这里缺少什么。
重要更新
Class 'GuzzleHttp\Client' not found
我收到了那条消息
mail.php
return array(
'driver' => 'mailgun',
'host' => 'smtp.mailgun.org',
'port' => 587,
'from' => array('address' => 'not-reply@xxxxxxxxx.com', 'name' => 'xxxxxxx'),
'encryption' => 'tls',
'username' => "xxxxxxxxxxxxxx",
'password' => "xxxxxxxxxxxxxx",
'sendmail' => '/usr/sbin/sendmail -bs',
'pretend' => false,
);
显然,xxxxxxxxxx是我的个人资料。我可以保证我正在设定正确的价值观。它确实应该有效。 :(
services.php
return array(
'mailgun' => array(
'domain' => 'domain-here',
'secret' => 'key-here',
),
'mandrill' => array(
'secret' => '',
),
'stripe' => array(
'model' => 'User',
'secret' => '',
),
);
domain
和secret
也填充了正确的值。
答案 0 :(得分:1)
@manix建议它似乎是正确的方法,但建议使用的版本3.9
已弃用。所以它应该是:
"guzzlehttp/guzzle": "~4.0"
由于我使用 Laravel 4.2构建项目。
Laravel 5.0 应为5.0
。
答案 1 :(得分:0)
尝试直接要求guzzle
依赖。
将"guzzle/guzzle": "~3.9@dev"
添加到composer.json,例如:
"require": {
"laravel/framework": "5.0.*",
"guzzle/guzzle": "~4.0"
},
更新您的项目。以下命令应在终端/控制台中执行。例如,如果您的laravel应用程序托管在Windows计算机中,则执行以下操作:
> cd project/folder/path // change the working path
> composer update // this command update the proyect and dependencies
如果laravel在linux机器上受到影响,你可以:
$ cd /path/a/mi/folder // change the working path
$ composer update // this command update the proyect and dependencies
再次测试您的申请