我想在在这里写问题之前,我会尝试找出是否可以通过 cmd 行发送邮件。所以我按照这些步骤通过 cmd 向我自己和我的一位同事发送了一封电子邮件,他正在开发与我相同的应用程序。来自 cmd 行的消息以应有的格式出现。
(内部应用程序,应该只向我同事的 OUTLOOK 帐户发送邮件)
一切似乎都很好,所以我认为我的 cakePHP 代码有一个错误:
到目前为止,我在邮件代码上的所有内容都是这样的:
应用程序/配置/电子邮件.php
public $smtp = array(
'transport' => 'Smtp',
'from' => array('from@test.sk'),
'host' => 'ip_address_of_my_host',
'port' => 25,
'timeout' => 30,
'username' => 'from@test.com',
'password' => 'password',
'client' => null,
'log' => true,
'charset' => 'utf-8',
'headerCharset' => 'utf-8',
);
UsersController.php(测试发送邮件功能)
public function test_send_email() {
$this->autoRender = false;
App::uses('CakeEmail', 'Network/Email');
$email = new CakeEmail('smtp');
$email->from(array('from@test.com' => 'APP TEST'));
$email->to('me@test.com');
$email->subject('Subject of testing');
$email->send('Message of testing');
}
加载 5 秒后,我得到:SMTP 错误:504 5.7.4 Unrecognized authentication type