3

我正在为我的一个项目使用 cakephp。发送电子邮件我使用 cakeEmail。为此,我创建了一个用于发送电子邮件的 gmail 帐户(即用于从该帐户发送邮件的代码)。邮件发送有效,但发送的邮件出现在收件人的垃圾邮件文件夹中。
同样在 gmail 帐户中,邮件不会出现已发送邮件文件夹。

代码如下:

在 /app/Config/email.php 文件中是:

类电子邮件配置 {

    public $gmail = array(
        'host' => 'ssl://smtp.gmail.com',
        'port' => 465,
        'username' => 'username@gmail.com',
        'password' => 'password',
        'transport' => 'Smtp'
    );  

}

我的控制器文件中用于密码恢复的代码是:

公共函数 _sendemail($user_data,$temporary_password){

            $email = new CakeEmail();
            $email->config('gmail');
            $email->template('welcome', 'password_recovery_email'); //template
            $email->emailFormat('html');
            $email->viewVars(array(
                               'temporary_password'=>$temporary_password,
                               'user_data'=>$user_data
                            ));
            $email->from(array('username@gmail.com' => 'Password Recovery'));
            $email->to($user_data['User']['email_address']);

            $email->subject('password recovery email');

            $result=$email->send();



    }

请告诉我应该怎么做才能让所有已发送的电子邮件出现在收件箱而不是垃圾邮件文件夹中。

谢谢

4

2 回答 2

2

有很多原因可以使您的电子邮件被视为垃圾邮件。

  • 也许 Gmail 无法将发件人(smtp 源/您的开发机器)检查为受信任的发件人。您是否尝试过将您的 php 脚本上传到另一台服务器(生产)然后从那里发送?

  • 您是否尝试将消息内容/主题更改为与“恢复密码”不同的内容?

  • 您是否尝试将相同的消息发送给另一个收件人?

Gmail 使用很多规则来检查电子邮件是否为垃圾邮件,请查看此链接:https ://webapps.stackexchange.com/questions/5773/how-gmail-and-other-mail-services-detects-垃圾邮件

于 2012-10-15T21:21:21.223 回答
-1

尝试使用此代码而不是 cakephp 的方法:

     $subject = "Your Email Subject";
     $to = "Recipient's Email Address";
     $from = "Your Email Address";
     $additional_headers = "From: $from\r\n";
     $additional_headers .= "Content-type: text/html; charset=iso-8859-1\r\n";
     $additional_headers .= "MIME-Version: 1.0\r\n";
     $additional_headers .= "Return-Path: $from\r\n";
     $additional_headers .= "X-Priority: 3\r\n";
     $additional_headers .= "X-Mailer: PHP\r\n";
     $message = "Your Email Body";
     mail($to, $subject, $message, $additional_headers, "-f $from")
于 2012-10-10T09:24:42.590 回答