事情经过:
最近PHP程序猿那边说服务器邮件发送是不是出现问题,PHP报错SMTP Error: Could not authenticate.
我查了下邮件日志和messages,没有看到报错。
经过一番查询,问题得到解决,PHP程序猿用的是phpMailer发送邮件,报了SMTP错误
谷歌了一番,了解到类似163,QQ企业邮箱得收到SMTP请求,大写的SMTP,太搞笑了,我试了一下,他们那边不报错了。。。我也震惊了
方法如下:
修改yaf/library/helper/phpMailer.php,修改了phpMailer.php,SMTP请求(大写),大概314行左右。

public function IsSMTP() {
  $this->Mailer = 'smtp';  //修改为 $this->Mailer = 'SMTP';
}

当然,方法并不一定正确,最好先进行排查
vim test.php

 \n ';
else
echo 'ok 
\n '; ?>

/usr/local/php/bin/php test.php 看看返回是否OK,先判断fsockopen函数是否被禁用,PHPmailer发送Email依赖此函数。