SMTP -> FROM SERVER: 250-m1.mydomain.com
250-PIPELINING
250-SIZE 15728640
250-VRFY
250-ETRN
250-STARTTLS
250-ENHANCEDSTATUSCODES
250-8BITMIME
250 DSN
CLIENT -> SMTP: STARTTLS
SMTP -> FROM SERVER:220 2.0.0 Ready to start TLS
CLIENT -> SMTP: EHLO localhost.localdomain
250-PIPELINING
250-SIZE 15728640
250-VRFY
250-ETRN
250-AUTH PLAIN
250-ENHANCEDSTATUSCODES
250-8BITMIME
SMTP -> ERROR: AUTH not accepted from server: 535 5.7.8 Error: authentication failed: Invalid authentication mechanism
CLIENT -> SMTP: RSET
SMTP -> FROM SERVER:250 2.0.0 Ok
CLIENT -> SMTP: MAIL FROM:
SMTP -> FROM SERVER:250 2.1.0 Ok
CLIENT -> SMTP: RCPT TO:
SMTP -> FROM SERVER:554 5.7.1 : Relay access denied
SMTP -> ERROR: RCPT not accepted from server: 554 5.7.1 : Relay access denied
CLIENT -> SMTP: quit
SMTP -> FROM SERVER:221 2.0.0 Bye
上面的错误,是我碰到的,有提示 Invalid authentication mechanism ,没有开启这个认证.
我就跑到 DOVECOT 认证服务器上加上了一个认证,现在的认证方式有 PLAIN 和 LOGIN
现在认证是通过了.不过又出现了新的问题.
新的问题如下.
SMTP -> FROM SERVER:220 m2.mydomain.com ESMTP hair
CLIENT -> SMTP: EHLO localhost.localdomain
SMTP -> FROM SERVER: 250-m2.mydomain.com
250-PIPELINING
250-SIZE 15728640
250-VRFY
250-ETRN
250-STARTTLS
250-ENHANCEDSTATUSCODES
250-8BITMIME
250 DSN
CLIENT -> SMTP: STARTTLS
SMTP -> FROM SERVER:220 2.0.0 Ready to start TLS
CLIENT -> SMTP: EHLO localhost.localdomain
SMTP -> FROM SERVER: 250-m2.mydomain.com
250-PIPELINING
250-SIZE 15728640
250-VRFY
250-ETRN
250-AUTH PLAIN LOGIN
250-ENHANCEDSTATUSCODES
250-8BITMIME
250 DSN
CLIENT -> SMTP: AUTH LOGIN
CLIENT -> SMTP: c2VydmljZUBoYWlyb25saW5lc2FsZS5jb20=
CLIENT -> SMTP: QURGYXMmZlNIa2pQI2E=
SMTP -> ERROR: Password not accepted from server: 535 5.7.8 Error: authentication failed:UGFzc3dvcmQ6
CLIENT -> SMTP: RSET
SMTP -> FROM SERVER:250 2.0.0 Ok
CLIENT -> SMTP: MAIL FROM:<service@mydomain.com>
SMTP -> FROM SERVER:250 2.1.0 Ok
CLIENT -> SMTP: RCPT TO:<to@163.com>
SMTP -> FROM SERVER:554 5.7.1 <to@163.com>: Relay access denied
SMTP -> ERROR: RCPT not accepted from server: 554 5.7.1 <to@163.com>: Rel ay access denied
CLIENT -> SMTP: quit
SMTP -> FROM SERVER:221 2.0.0 Bye
现在的提示是认证失败,你玛,怎么会出现此种坑爹的情况
我在FOXMAIL上用这个密码发的好好的,怎么会这样.
下面帖上我发信时的代码
require_once('class.phpmailer.php');
$mail = new PHPMailer();
$mail->IsSMTP();
$mail->Host = "m2.mydomain.com";
$mail->Port = 26;
$mail->SMTPAuth = true;
$mail->SetFrom('service@mydomain.com', 'lopl.net');
$mail->AddReplyTo('service@mydomain.com', 'lopl.net');
$mail->Username = 'service@mydomain.com';
$mail->Password = 'mypassword';
$mail->AddAddress("to@163.com");
$mail->Subject = "New Fax";
$mail->SMTPDebug = 3;
$mail->SMTPSecure = 'tls'; // or $mail->SMTPSecure = 'ssl';
$mail->Body = "You have new FAX ";
$mail->Send();
echo "Error sending: " . $mail->ErrorInfo;
另:当用PHPMAILER发信时,出现以上两种情况的时候,用FOXMAIL测试,均是正常.请大神救命.在此拜谢!!!
9 个解决方案
#1
不知道为什么是 $mail->Port =
26;
#2
端口都没问题
#3
现在是用PHPMAILER发,提示密码通不过.
但是FOXMAIL是好的,一直可以正常发送....
但是FOXMAIL是好的,一直可以正常发送....
#4
#5
你的开发环境是什么,有没有禁用了PHPMailer里面的自带函数,例如fsockopen函数被禁用了?
#6
fsockopen函数没被禁用,开发环境就是LAMP,没有禁用自带的函数..
#7
我也遇到类似问题,说什么phpmailer EHLO not accepted from server, 但是这个帐号在foxmail中是正常发送给自己的。利用phpmailer自己发给自己不行,自己发给别人就可以,真是个让人抓狂的问题。
#8
修改emil_api.php中的 email_send 函数中的:
其他的就是配置好用户名 密码 SMTP_host,用Foxmail其他客户端可以收发是因为默认SMTPAuth = true
if( is_null( $g_phpMailer ) ) {
if ( $t_mailer_method == PHPMAILER_METHOD_SMTP ) {
register_shutdown_function( 'email_smtp_close' );
}
$mail = new PHPMailer(true);
/**
* 添加发送邮件的参数
* @author [pooy] <[pooy@pooy.net]>
*/
$mail->SMTPDebug = 1; //生产环境中去掉
$mail->SMTPAuth = true; // Enable SMTP authentication
$mail->Port = 25; //所有发信默认端口25 个别特殊的是465 谷歌QQ163
$mail->SMTPSecure = 'ssl';
} else {
$mail = $g_phpMailer;
}
其他的就是配置好用户名 密码 SMTP_host,用Foxmail其他客户端可以收发是因为默认SMTPAuth = true
#9
文件路径在
mantisbt\core\emil_api.php
mantisbt\core\emil_api.php
#1
不知道为什么是 $mail->Port =
26;
#2
端口都没问题
#3
现在是用PHPMAILER发,提示密码通不过.
但是FOXMAIL是好的,一直可以正常发送....
但是FOXMAIL是好的,一直可以正常发送....
#4
#5
你的开发环境是什么,有没有禁用了PHPMailer里面的自带函数,例如fsockopen函数被禁用了?
#6
fsockopen函数没被禁用,开发环境就是LAMP,没有禁用自带的函数..
#7
我也遇到类似问题,说什么phpmailer EHLO not accepted from server, 但是这个帐号在foxmail中是正常发送给自己的。利用phpmailer自己发给自己不行,自己发给别人就可以,真是个让人抓狂的问题。
#8
修改emil_api.php中的 email_send 函数中的:
其他的就是配置好用户名 密码 SMTP_host,用Foxmail其他客户端可以收发是因为默认SMTPAuth = true
if( is_null( $g_phpMailer ) ) {
if ( $t_mailer_method == PHPMAILER_METHOD_SMTP ) {
register_shutdown_function( 'email_smtp_close' );
}
$mail = new PHPMailer(true);
/**
* 添加发送邮件的参数
* @author [pooy] <[pooy@pooy.net]>
*/
$mail->SMTPDebug = 1; //生产环境中去掉
$mail->SMTPAuth = true; // Enable SMTP authentication
$mail->Port = 25; //所有发信默认端口25 个别特殊的是465 谷歌QQ163
$mail->SMTPSecure = 'ssl';
} else {
$mail = $g_phpMailer;
}
其他的就是配置好用户名 密码 SMTP_host,用Foxmail其他客户端可以收发是因为默认SMTPAuth = true
#9
文件路径在
mantisbt\core\emil_api.php
mantisbt\core\emil_api.php