我正在尝试学习如何使用Laravel中的Mailgun发送电子邮件。当我尝试发送电子邮件时,我得到一个超时,说:超过60秒的最大执行时间 申请时间在这里:
$line = fgets($this->_out);
当我点击电子邮件页面上的按钮时,我有一条激活的路线:
Route::post('/email', 'MainController@sendEmail');
这是我的控制器功能(出于隐私原因替换了我的电子邮件):
public function sendEmail() {
$data = [
'title'=>'Email'
];
Mail::send('emails.hello', $data, function($message) {
$message->from('example@gmail.com', 'Example Person');
$message->to('example@gmail.com')->subject('we made it');
});
return Redirect::to('/');
}
关于我可能做错的任何想法?
答案 0 :(得分:2)
如果您的托管服务提供商未打开app / config / mail.php配置文件中使用的SMTP端口,则通常会发生这种情况。请检查并要求他们打开港口。这应该解决问题。
答案 1 :(得分:1)
通过mailgun发送电子邮件不是更简单,只需添加API包,发布和更新配置并使用自定义外观发送它们(将Mail :: send()更改为Mailgun :: send())
您可以在此处找到该软件包:http://packalyst.com/packages/package/vtalbot/mailgun
我知道这并没有真正解决你得到的错误(需要更多信息来帮助解决这个问题),但使用该软件包确实简化了整个过程!