使用godaddy smtp relay和PHPMailer在codeigniter

时间:2016-04-12 19:11:28

标签: php codeigniter email google-apps

我正在尝试将密码邮件重置为客户端用户。我正在使用一个辅助函数,它从控制器调用来发送电子邮件。

function submit_email($to,$subject,$message)
{
    $CI = get_instance();
    $CI->load->library('My_PHPMailer');

    $mail = new PHPMailer();
    $mail->Host       = "relay-hosting.secureserver.net";
    $mail->Port       = 465;
    $mail->SetFrom('info@domain.in', 'Saurabh Pradhan');
    $mail->AddReplyTo("info@domain.in","Saurabh Pradhan");
    $mail->Subject    = $subject;
    $mail->Body      = $message;
    $mail->AltBody    = "Plain text message";
    $destino = $to;
    $mail->AddAddress($destino, "John Doe");
    if(!$mail->Send()) {
        $data["message"] = "Error: " . $mail->ErrorInfo;
    } else {
        $data["message"] = "Message sent correctly!";
    }
var_dump($data);
}

场景1(工作):如果地址是我个人的gmail.id,例如。 pradhansp@gmail.com比电子邮件好。

array(1) { ["message"]=> string(23) "Message sent correctly!" }

场景2(不工作):如果地址是客户域info@domain.in,那么我也收到了成功消息,但邮件未送达。

这里重要的一点是客户域托管在godaddy上但是对于电子邮件他正在使用谷歌应用程序工作。我已经查看了godaddy帐户上的MX条目,他们正确地指向谷歌。

优先|邮件服务器

1 | ASPMX.L.GOOGLE.COM。

1 个答案:

答案 0 :(得分:2)

经过多次尝试使用不同的解决方案后,我终于设法让它在回答下面列出的问题的帮助下工作。感谢@Vicm

can't send email to addresses at my own domain

使用以下步骤将MX记录添加到cPanel:

进入cPanel

  1. 转到cPanel邮件部分
  2. 搜索MX Entry Maintenance,有时上面没有文字 图标。
  3. 选择相关域
  4. 将电子邮件路由更改为远程邮件交换器。
  5. 添加您域中的所有Google MX记录 配置使用适当的优先级值。你可以检查一下 这里的记录和优先事项 https://support.google.com/a/answer/174125
  6. 仔细检查远程邮件交换器。被选中。
  7. 通过此设置,我可以使用PHPMailer将电子邮件发送到godaddy域中的电子邮件帐户。

    Google App说明,讨论MX记录https://support.google.com/a/answer/54717?hl=en