(PHPMailer)连接到SMTP服务器失败(EHLO命令失败)(Ubuntu 18.04.1)

时间:2019-02-20 12:09:41

标签: php smtp apache2 phpmailer ubuntu-18.04

我正在尝试使用PHPMailer通过在Ubuntu 18.04.1的apache2中运行的php脚本使用PHPMailer发送电子邮件,但是在打开连接后失败。我已启用调试,输出如下:

2019-02-20 11:18:17 Connection: opening to smtp.office365.com:587, 
timeout=300, options=array()  
2019-02-20 11:18:17 Connection: opened  
2019-02-20 11:23:17 SERVER -> CLIENT:  
2019-02-20 11:23:17 CLIENT -> SERVER: EHLO localhost  
2019-02-20 11:23:17 SERVER -> CLIENT:        
2019-02-20 11:23:17 SMTP ERROR: EHLO command failed:         
2019-02-20 11:23:17 SMTP NOTICE: EOF caught while checking if 
connected   
2019-02-20 11:23:17 Connection: closed        
SMTP Error: Could not connect to SMTP host.
SMTP connect() failed.
https://github.com/PHPMailer/PHPMailer/wiki/Troubleshooting  
Mailer Error: SMTP connect() failed.  
https://github.com/PHPMailer/PHPMailer/wiki/Troubleshooting

我认为这是一个网络问题,因为我什至无法ping通“ google.com”之类的外部服务器,也没有返回数据包,并且我有100%的数据包丢失。但是,我可以“挖google.com”并获得一个IP地址作为回报。

我还可以执行“ telnet smtp.office.365 587”,它再次返回一个IP地址以及域“ LHR-efz.ms-acdc.office.com”。

在我看来,我的PC上的流量有问题,这可能是SMTP连接失败的原因。

1 个答案:

答案 0 :(得分:0)

2019-02-20 11:18:17 Connection: opening to smtp.office365.com:587, 
...
2019-02-20 11:23:17 CLIENT -> SERVER: EHLO localhost  

您的SMTP客户端已连接到Office365服务器,然后您的客户端声称是Office365邮件服务器。尽管我很少相信Microsoft具有一致性,可靠性或可预测性之类的字眼,但我并不奇怪他们的服务器之后不愿与您交谈。