我正在测试使用codeigniter发送电子邮件并且我成功发送了电子邮件,但是当我查看我的收件箱时,我没有找到我之前发送的电子邮件。
这是控制器:
$this->load->library('email');
$this->email->from('email@yahoo.com', 'my name');
$this->email->to('email@yahoo.com');
$this->email->subject('Email Test');
$this->email->message('Testing the email class.');
$this->email->send();
echo $this->email->print_debugger();
成功消息:
Your message has been successfully sent using the following protocol: mail
From: "XXXXXXXXXXXXXX"
Return-Path:
Reply-To: "XXXXXXX@yahoo.com"
X-Sender: XXXXXXX@yahoo.com
X-Mailer: CodeIgniter
X-Priority: 3 (Normal)
Message-ID: <XXXXXXX@yahoo.com>
Mime-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
=?utf-8?Q?Email_Test?=
Testing the email class.
答案 0 :(得分:2)
您可以在电子邮件帐户中查看垃圾邮件文件夹。 当邮件从本地服务器发送时,gmail / yahoo有时会将电子邮件设置为垃圾邮件。
答案 1 :(得分:1)
尝试使用以下配置...
$config = array(
'protocol' => 'smtp',
'smtp_host' => 'your host',
'smtp_port' => 465,
'smtp_user' => 'your email address',
'smtp_pass' => 'password',
'mailtype' => 'html',
'mailpath' => '/usr/sbin/sendmail',
'charset' => 'iso-8859-1',
'wordwrap' => TRUE;
);
$this->load->library('email', $config);
答案 2 :(得分:0)
根据您的服务器,您还应该检查邮件服务器日志,看看电子邮件是否实际上是开箱即用的。有时您可能会成功发送它,因为邮件会传递到您服务器上的EXIM,但邮件可能会在队列中死亡。
如果这是一个linux框,通常会开始查看/var/log/exim4/
等; (当然取决于您的邮件服务器设置)。