无法通过Gmail从我的服务器发送电子邮件给自己

时间:2015-10-12 20:42:55

标签: php codeigniter email gmail

我无法通过gmail从我的服务器向自己发送电子邮件。

例如:

$config['mailtype'] = 'text';
$this->email->initialize($config);
$this->email->to('me@gmail.com');
$this->email->from('me@gmail.com');
$this->email->subject('Try this');
$this->email->message('It worked'. date('h:i:sa'));
$this->email->send();

我使用gmail和我的域名。所以我实际上发送到me@mydomain.com,但为了更清楚,我使用me@gmail.com作为我的例子。如果我将电子邮件 - >设置为变量与另一个电子邮件帐户一起工作。我能够毫无问题地邮寄给我的所有客户。我收到客户的邮件就好了。

我检查了垃圾邮件过滤器,但它们都是空的。被阻止的ip也是空的。 端口25在我的防火墙和路由器中打开。

我没有看到错误。在服务器端,我从电子邮件调试中看到了这一点:

Your message has been successfully sent using the following protocol: mail<br /><pre>User-Agent: CodeIgniter
Date: Mon, 12 Oct 2015 13:27:11 -0700
From: &quot;Me&quot; &lt;me@gmail.com&gt;
Return-Path: &lt;me@gmail.com&gt;
Reply-To: &quot;me@gmail.com&quot; &lt;me@gmail.com&gt;
X-Sender: me@gmail.com
X-Mailer: CodeIgniter
X-Priority: 3 (Normal)
Message-ID: &lt;561c179fe94dd@gmail.com&gt;
Mime-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
=?utf-8?Q?Try_this?=
It worked01:27:11pm

然而,电子邮件并未显示在我的Gmail收件箱中。它也不会显示在外框中。这是一个Gmail问题吗?这是我如何设置DNS的问题吗?

我错过了什么?

1 个答案:

答案 0 :(得分:0)

使用Codeigniter Mail Helper

$this->load->library('email'); //load Codeigniter E-Mailer Library

$this->email->from('test@gmail.com', 'Testing Bot');
$this->email->to('me@gmail.com'); 

//$this->email->cc('another@another-example.com'); 
//$this->email->bcc('them@their-example.com'); 

$this->email->subject('this is subject mail');

$message = 'this is Message'. date('h:i:s');
$this->email->message($message);    

if(!$this->email->send())
{
    echo $this->email->print_debugger();
}
else
{
    echo 'Mail Sent'
}

使用phpMailer

application/library

中的

放置Emailer.php

和控制者

$this->load->library('emailer');

$mail = new Emailer(true);
$mail->IsSMTP();
$mail->Host = "";       

$msg = "this is Message". date('h:i:s');//youe message line one
$msg .= "Im Here tooo";//your message line two

$mail->AddAddress('me@gmail.com', 'My Name');
$mail->SetFrom('test@gmail.com');
$mail->AddReplyTo('test@gmail.com');
$mail->Subject = 'this is subject mail';
$mail->AltBody = 'To view the message, please use an HTML compatible email viewer!';
$mail->MsgHTML($msg);

if($mail->Send()) {
    echo 'Mail Sent';
}
else
{
    echo 'Failed';
}