?> WDlinux官方论坛 - Powered by Discuz! Board Board logo

标题: [BUG反馈] zend mail 发送gmail邮箱的BUG [打印本页]

作者: lengyuqing521    时间: 2012-7-18 11:48     标题: zend mail 发送gmail邮箱的BUG

在使用zend mail发送邮件的时候, 使用smtp.163.com 发送邮件没有问题. 但是使用smtp.gmail.com发送邮件的时候,apache报错.
111.GIF

代码如下:

require_once 'Zend/Loader.php';
require_once 'Zend/Loader/Autoloader.php';  // 自动加载类
$loader = Zend_Loader_Autoloader::getInstance();
$loader->setFallbackAutoloader(true);
$loader->suppressNotFoundWarnings(false);

require_once 'Zend/Mail.php';
require_once 'Zend/Mail/Transport/Smtp.php';

$config = array('auth' => 'login',
                'port' => 587,
                'ssl' => 'tls',
                'username' => 'xxxx@gmail.com',
                'password' => 'xxxx');

$transport = new Zend_Mail_Transport_Smtp('smtp.gmail.com', $config);

$mail = new Zend_Mail();
$mail->setBodyText('This is the text of the mail.');
$mail->setFrom('xxxx@gmail.com', 'Some Sender');
$mail->addTo('xxxx@163.com', 'Some Recipient');
$mail->setSubject('TestSubject');
$mail->send($transport);

图片附件: 111.GIF (2012-7-18 11:45, 3.48 KB) / 下载次数 6856
http://www.wdlinux.cn/bbs/attachment.php?aid=1100&k=80b4752e01058e8b2aa10dff0ea65a32&t=1713569331&sid=P8nxXO


作者: lengyuqing521    时间: 2012-7-18 11:51

回复 1# lengyuqing521

服务器版本信息:

    222.GIF

图片附件: 222.GIF (2012-7-18 11:51, 2.56 KB) / 下载次数 5711
http://www.wdlinux.cn/bbs/attachment.php?aid=1101&k=ba8441ad8d040aace8396850bae33c3e&t=1713569331&sid=P8nxXO


作者: lengyuqing521    时间: 2012-7-18 12:21

求管理员解答啊, 在线等
作者: lengyuqing521    时间: 2012-7-18 12:24

问题应该出在这里

'ssl' => 'ssl',

如果加上ssl或TLS选项 就会报错了
作者: admin    时间: 2012-7-18 12:40

多试几次看看,是不是都这样?
作者: lengyuqing521    时间: 2012-7-18 17:12

刚才我有下载了一个最新版本的wdlinux 安装到了本地虚拟机, 任何操作没有执行,任何插件都没有进行安装. 就只是切换到了apache引擎, 然后执行, zend_mail 发送邮件, 使用ssl协议 进行发送, 就出现了 111.GIF 这样的错误.

图片附件: 111.GIF (2012-7-18 17:11, 3.48 KB) / 下载次数 6698
http://www.wdlinux.cn/bbs/attachment.php?aid=1110&k=ebbb91cb3f101768e98d88390244c962&t=1713569331&sid=P8nxXO


作者: lengyuqing521    时间: 2012-7-18 17:38

罪魁祸首是这个函数
stream_socket_client('ssl://smtp.163.com:25', $errorNum, $errorStr, 30);

在执行这个函数的时候 apache报错了.
作者: admin    时间: 2012-7-18 17:38

那应该是不支持SSL
作者: lengyuqing521    时间: 2012-7-18 17:39

管理员还在吗?  这个问题该怎么解决呢? 是apache 的问题吗? 在以前版本的服务器上没出现这样情况
作者: lengyuqing521    时间: 2012-7-18 17:41

$resource = stream_socket_client('tcp://smtp.163.com:25', $errorNum, $errorStr, 30);var_dump($resource);

如果使用 TCP协议的话,是可以返回一个资源的, 只是ssl和tls 不行.
作者: admin    时间: 2012-7-18 17:58

加上SSL参数 ,再编译一次apache 试试
作者: lengyuqing521    时间: 2012-7-18 18:10

SSL 没有被编译进来吗?  我使用phpinfo 却是看到了 1.0的openssl 被编译进去了

如何重新编译apache, 这个不太懂, 有没有现成的语句可以执行 .
作者: lengyuqing521    时间: 2012-7-18 18:39

重新编译apache, 加上了 ssl , 好像是好使了. 目前还在测试
作者: admin    时间: 2012-7-18 20:21

关注
作者: lengyuqing521    时间: 2012-8-1 12:01

重新编译了apache,加上了SSL模块,   使用一段时间,的确再没有出现报错的情况了. 希望管理员在下个版本更新的时候处理掉这个问题, 一些没有太多经验的朋友会因为这个问题烦恼很久的
作者: admin    时间: 2012-8-1 12:47

谢谢
作者: happyboy    时间: 2013-3-25 16:48

很好很强大,学习了
作者: wwdahaiww    时间: 2013-3-25 17:09

进来留个记号,方便以后查阅




欢迎光临 WDlinux官方论坛 (http://www.wdlinux.cn/bbs/) Powered by Discuz! 7.2