从我自己的服务器发送带有codeigniter(配置)的电子邮件

时间:2013-07-11 06:41:21

标签: php codeigniter email smtp

过去我已经通过谷歌smtp发送电子邮件了,我现在想从我自己的服务器发送电子邮件。

我已按照this example设置我的电子邮件配置文件。这就是我的email.php文件的样子:

$config['useragent']        = 'CodeIgniter';        
$config['protocol']         = 'mail';        
$config['mailpath']         = '/usr/sbin/sendmail';
$config['smtp_host']        = 'localhost';
$config['smtp_user']        = 'noreply@publish.mmedija.com';
$config['smtp_pass']        = 'testtest';
$config['smtp_port']        = 25;
$config['smtp_timeout']     = 5;
$config['wordwrap']         = TRUE;
$config['wrapchars']        = 76;
$config['mailtype']         = 'text';
$config['charset']          = 'utf-8';
$config['validate']         = FALSE;
$config['priority']         = 3;
$config['crlf']             = "\r\n";
$config['newline']          = "\r\n";
$config['bcc_batch_mode']   = FALSE;
$config['bcc_batch_size']   = 200;

我有一台Apache服务器。我有DirectAdmin软件,我用它设置了一个带密码的电子邮件帐户(noreply@publish.mmedija.com)(testtest)。这是我必须在配置文件中设置的stmp_user和smtp_pass。

很奇怪,因为:

$this->email->send()

返回True,但不发送电子邮件。 print_debugger返回:

Your message has been successfully sent using the following protocol: mail
User-Agent: CodeIgniter
Date: Thu, 11 Jul 2013 08:36:13 +0200
From: "Publishwall.si" 
Return-Path: 
Reply-To: "noreply@publish.mmedija.com" 
X-Sender: noreply@publish.mmedija.com
X-Mailer: CodeIgniter
X-Priority: 3 (Normal)
Message-ID: <51de525d9d15a@publish.mmedija.com>
Mime-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
=?utf-8?Q?Publishwall.si_-_Aktivacija_ra=c4=8duna?=
test 

但我还没有收到电子邮件。调试器中的“Reply-To”字段也不是我设置发送邮件的字段。也许我在php.ini中配置有问题:

[mail function]
; For Win32 only.
; http://php.net/smtp
SMTP = localhost
; http://php.net/smtp-port
smtp_port = 25

; For Win32 only.
; http://php.net/sendmail-from
;sendmail_from = me@example.com

; For Unix only.  You may supply arguments as well (default: "sendmail -t -i").
; http://php.net/sendmail-path
;sendmail_path =

2 个答案:

答案 0 :(得分:1)

您可能想要检查邮件服务器日志。这些应该告诉您邮件服务器是否甚至收到了从您的脚本排队的消息 - 如果是,那么当它尝试将消息传递到远程MTA时会发生什么。

答案 1 :(得分:0)

你要把它寄到哪里?尝试发送到您的其他电子邮件。我知道在使用谷歌应用程序时发送到同一个域有问题。

尝试将其发送到hotmail或yahoo。