我决定在我最新的 Laravel 项目中使用 Mailgun,因为它似乎具有开箱即用的出色集成。
我按照 Laravel 指南 ( http://laravel.com/docs/mail#configuration ) 设置 Mailgun,一切都在本地运行。在 Vagrant 中运行本地服务器时,我能够发送电子邮件,但是当我尝试从 DigitalOcean 服务器发送电子邮件时,我收到以下错误:
file: "/home/forge/MYPROJECTSITE.com/vendor/laravel/framework/src/Illuminate/Mail/Transport/MailgunTransport.php"
line: 121
message: "Class 'GuzzleHttp\Client' not found"
type: "Symfony\Component\Debug\Exception\FatalErrorException"
我已尝试重新安装 Guzzle,并且已对所有设置进行了三次检查。奇怪的是,当它从 Vagrant 运行时我会收到电子邮件,但当它从 DigitalOcean 服务器运行时我不会收到电子邮件。
有人见过这个或者知道什么设置可能导致这个吗?
感谢您的宝贵时间。
最佳答案
我在一个新的 ubuntu 盒子上发生了这种情况。我一生都无法找出原因,因为 Guzzle 在另一个地方工作。我刚刚将邮件更改为 SMTP 并使用了 mailgun 的登录名/密码并且它有效。
关于Laravel 和 Mailgun : Guzzle not found in production,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24924075/