Zend_Mail 发送邮件失败,输出消息:连接超时
Posted
技术标签:
【中文标题】Zend_Mail 发送邮件失败,输出消息:连接超时【英文标题】:Zend_Mail fail to send email, output message : Connection timeout 【发布时间】:2011-01-24 01:28:54 【问题描述】:我尝试编写有关使用 Zend Framework 发送电子邮件的代码。这是代码,
$mail = new Zend_Mail('utf-8');
$mailConfig = array(
'auth'=> 'login',
'username' => 'sample@gmail.com',
'password' => 'samplepassword',
'ssl' => 'tls',
'port' => '587';
$tr = new Zend_Mail_Transport_Smtp('smtp.gmail.com', $mailConfig);
Zend_Mail::setDefaultTransport($tr);
$mail->setSubject('test email');
$mail->setBodyText('body');
$mail->setFrom('sample@gmail.com', 'Just a sample');
$mail->addTo('anothersample@gmail.com', 'Another sample');
$mail->send();
这些代码在我的本地计算机上运行良好,但无法在服务器端发送电子邮件并返回消息“连接超时”。我猜服务器端可能存在一些配置问题,但我不知道它是什么。有人知道出了什么问题吗?
【问题讨论】:
所以代码没有问题? 【参考方案1】:联系服务器管理员,询问他们是否允许在端口 587 上进行传出通信。 他们似乎正在阻止某些流量。
【讨论】:
我已经联系了管理员。端口号 587 未被阻塞。还有其他建议吗? 如果不是端口,询问他们是否没有以任何方式阻止来自 php 的电子邮件。错误消息到底说了什么?你在安全模式下运行吗?尝试将其关闭。【参考方案2】:尝试'ssl'='ssl'
和端口 995。
【讨论】:
以上是关于Zend_Mail 发送邮件失败,输出消息:连接超时的主要内容,如果未能解决你的问题,请参考以下文章
通过 Gmail smtp 服务器使用 Zend_Mail 发送邮件