Email 如何为Moodle配置Mailgun?

Email 如何为Moodle配置Mailgun?,email,moodle,mailgun,Email,Moodle,Mailgun,与Moodle一起使用的Mailgun的正确配置是什么?我正在谷歌云上使用Bitnami Moodle图像 SMTP主机:SMTP.mailgun.org SMTP安全性:无 SMTP验证类型:登录 SMTP用户名:poastmaster@mymgdomain.com SMTP密码:aslistedtheaccountdetails 我收到了这个错误消息 发送密码更改确认电子邮件时出错 有关此错误的详细信息 调试信息: 错误代码:cannotmailconfirm 堆栈跟踪: /lib/se

与Moodle一起使用的Mailgun的正确配置是什么?我正在谷歌云上使用Bitnami Moodle图像

  • SMTP主机:SMTP.mailgun.org

  • SMTP安全性:无

  • SMTP验证类型:登录

  • SMTP用户名:poastmaster@mymgdomain.com
  • SMTP密码:aslistedtheaccountdetails
我收到了这个错误消息

发送密码更改确认电子邮件时出错

有关此错误的详细信息

调试信息: 错误代码:cannotmailconfirm 堆栈跟踪: /lib/setuplib.php的第495行:引发moodle_异常 /login/lib.php的第110行:调用print_error() /login/forget_password.php的第81行:调用core_login_process_password_reset_request()
输出缓冲区:2016-11-18 14:21:25连接:打开smtp.mailgun.org:25,超时=300,选项=数组()2016-11-18 14:23:32 smtp错误:无法连接到服务器:连接超时(110)2016-11-18 14:23:32 smtp连接()失败

您应该尝试使用端口
465
而不是端口
25
,并将加密设置为
SSL

2016-11-18 14:21:25 Connection: opening to smtp.mailgun.org:25, timeout=300, options=array ( ) 2016-11-18 14:23:32 SMTP ERROR: Failed to connect to server: Connection timed out (110) 2016-11-18 14:23:32 SMTP connect() failed. https://github.com/PHPMailer/PHPMailer/wiki/Troubleshooting 我个人没有使用moodle,但我相信您可以这样做:
UPDATE mdl\u config SET value='0ssl://smtp.mailgun.org:465“WHERE name='smtphosts'

Google计算引擎不允许在端口25、465和587上进行出站连接。默认情况下,这些出站SMTP端口会被阻止,因为这些端口容易被大量滥用

25号端口为出站端口。 邮枪-所以尝试使用端口2525

作为快速测试,您还可以尝试从命令行远程登录以检查连接,如下所示:

> telnet smtp.mailgun.org 2525

我只是在digital ocean的服务器上做的。因此,解决方案如下:

  • 配置您的DNS并在mailgun应用程序上进行检查
  • 在凭据中获取您的smtp密码
  • SMTP主机:SMTP.mailgun.org:587
  • SMTP安全性:tls
  • SMTP验证类型:登录
  • SMTP用户名:poastmaster@
  • SMTP密码:
这里的诀窍是端口587。我什么都试过了,但就是这个奏效了。作为奖励,如果您有ssh访问服务器的权限,您可以通过以下方式从终端发送电子邮件:

./swaks --auth \
    --server smtp.mailgun.org:587 \
    --au postmaster@<yourdomain> \
    --ap <smtpcredential> \
    --to anyemail@youwantosend.com \
    --h-Subject: "Teste Moodle" \
    --body 'Testing some Mailgun awesomness!'

我在Mailgun的日志中看到这些消息被接受并传递。我还没有在我的收件箱中看到它们,但可能会有延迟。我想知道mailgun是否更喜欢该端口的TLS?
<?php
use PHPMailer\PHPMailer\PHPMailer;
use PHPMailer\PHPMailer\Exception;

require 'path/to/PHPMailer/src/Exception.php';
require 'path/to/PHPMailer/src/PHPMailer.php';
require 'path/to/PHPMailer/src/SMTP.php';

$mail = new PHPMailer;

$mail->isSMTP();                                      // Set mailer to use SMTP
$mail->Host = 'smtp.mailgun.org:587';                 // Specify main and backup SMTP servers
$mail->SMTPAuth = true;                               // Enable SMTP authentication
$mail->Username = 'postmaster@moodle.gpematec.com.br';     // SMTP username
$mail->Password = '<your credetials>';                           // SMTP password
$mail->SMTPSecure = 'tls';                            // Enable encryption, only 'tls' is accepted

$mail->From = 'youremail@yourdomain.com';
$mail->FromName = 'You';
$mail->addAddress('anyemail@youwantosend.com');                 // Add a recipient

$mail->WordWrap = 50;                                 // Set word wrap to 50 characters

$mail->Subject = 'PHP subject';
$mail->Body    = 'Email from php!';

if(!$mail->send()) {
    echo 'Message could not be sent.';
    echo 'Mailer Error: ' . $mail->ErrorInfo;
} else {
    echo 'Message has been sent';
}
?>