我正在尝试使用 CakePhp 2.0 发送电子邮件。在我的控制器中我使用这个代码(我知道它很好,我从烹饪书 http://book.cakephp.org/2.0/en/core-utility-libraries/email.html) :
App::uses('CakeEmail', 'Network/Email');
$email = new CakeEmail("myConfig");
$email->from(array('[email protected] /cdn-cgi/l/email-protection' => 'From Example'));
$email->to($to);
$email->subject($msgtitle);
$ok = $email->send($content);
and in app/config/email.php
我有这个配置:
<?php
class EmailConfig {
public $myConfig = array(
'host' => 'mail.myServer.com',
'port' => 587,
'username' => 'mYaccount',
'password' => 'secret',
'transport' => 'Smtp'
);
}
?>
问题是服务器的回答是:
SMTP Error: 530 5.7.0 Must issue a STARTTLS command first.
帐户名正确,密码也正确。该配置在 Thunderbird 中加载时有效,与 smtp 服务器的连接设置为:
服务器名称:mail.myServer.com
端口:587
连接安全:STARTTLS
身份验证:普通密码
用户名:mYaccount
您确定您的 SMTP 支持 tls 吗?尝试发送 ehlo 命令:
telnet 1.2.3.4 25
ehlo testing
您应该看到类似以下内容:
250-STARTTLS
在列表中。
如果您看到它,则它很可能未启用。您需要启用它。如果您没有看到它,则需要添加它。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)