我决定使用Mailgun作为我最新的Laravel项目,因为它似乎有很好的集成开箱即用。
我按照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服务器运行时却没有收到。
有没有人看过这个或者知道什么设置可能导致这个?
感谢您的时间。
答案 0 :(得分:2)
我在一个新的ubuntu盒子上发生了这件事..我无法为我的生活找到原因,因为Guzzle在另一个地方工作..我只是将邮件更改为SMTP并使用来自mailgun的登录名/密码它有效。
答案 1 :(得分:1)
解决方案:
从composer.lock
移除.gitignore
行并推送。在composer install
之后,您的服务器将使用锁定文件下载所需的依赖项。
答案 2 :(得分:0)
sudo dd if=/dev/zero of=/swapfile bs=1024 count=512k
mkswap /swapfile
swapon /swapfile