繁体   English   中英

梨(SMTP)Mail.php无法发送,没有错误

[英]Pear (SMTP) Mail.php won't send, No errors

我正在尝试使用PEAR的Mail.php通过cPanel邮件服务器(在托管服务器上运行)通过SMTP发送电子邮件

该脚本与邮件服务器在同一服务器上。

我没有收到任何错误,但是我也没有收到任何邮件,而且我也不知道为什么:/

我的代码:

Email.php

<?php
ini_set("include_path", '/home/gamerfin/php:'); 

require_once "Mail.php";

class Email{

function mailClient(){
    return Mail::factory('smtp', array(
        'host' => 'ssl://mail.gamerfinder.net',
        'port' => '465',
        'auth' => true,
        'debug' => true,
        'username' => 'messenger@gamerfinder.net', //your gmail account
        'password' => '*********' // your password
    ));

}

function send(){}

function newMessageMail($sender, $email, $message){
    echo $email;
    $smtp = self::mailClient();
    $from = 'messenger@gamerfinder.net'; //change this to your email address
    $to = $email; // change to address
    $subject = 'New Message from '.$sender; // subject of mail
    $body = "You have recieved a new message from ".$sender."<br>Message:<br>".$message; //content of mail

    $headers = array(
        'From' => $from,
        'To' => $email,
        'Subject' => $subject
    );
    $mail = $smtp->send($to, $headers, $body);

    var_dump ($mail);
}
}

?>

谁能看到我可能出了问题的地方?

我看过其他问题并尝试了一些答案,但是没有运气:/

谢谢

编辑

这是邮件调试日志:

DEBUG: Recv: 220-cloud536.unlimitedwebhosting.co.uk ESMTP Exim 4.89 #1 Fri, 25 Aug 2017 23:52:55 +0100 
DEBUG: Recv: 220-We do not authorize the use of this system to transport unsolicited, 
DEBUG: Recv: 220 and/or bulk e-mail.
DEBUG: Send: EHLO localhost

DEBUG: Recv: 250-cloud536.unlimitedwebhosting.co.uk Hello localhost [149.255.60.167]
DEBUG: Recv: 250-SIZE 52428800
DEBUG: Recv: 250-8BITMIME
DEBUG: Recv: 250-PIPELINING
DEBUG: Recv: 250-AUTH PLAIN LOGIN
DEBUG: Recv: 250 HELP
DEBUG: Send: AUTH LOGIN

DEBUG: Recv: 334 VXNlcm5hbWU6
DEBUG: Send: bWVzc2VuZ2VyQGdhbWVyZmluZGVyLm5ldA==

DEBUG: Recv: 334 UGFzc3dvcmQ6
DEBUG: Send: ***************

DEBUG: Recv: 235 Authentication succeeded
DEBUG: Send: MAIL FROM:
<messenger@gamerfinder.net>
  DEBUG: Recv: 250 OK
    DEBUG: Send: RCPT TO:
  <jamiemac262@gmail.com>
    DEBUG: Recv: 250 Accepted
    DEBUG: Send: DATA

DEBUG: Recv: 354 Enter message, ending with "." on a line by itself
DEBUG: Send: From: messenger@gamerfinder.net
To: ***********@gmail.com
Subject: New Message from jamiemac262


DEBUG: Send: You have recieved a new message from jamiemac262<br>
Message:<br>
jamiemac262 has accepted your request to play Elite Dangerous
DEBUG: Send: 
.

DEBUG: Recv: 250 OK id=1dlNTD-0006DI-TS
DEBUG: Send: QUIT

DEBUG: Recv: 221 cloud536.unlimitedwebhosting.co.uk closing connection

我设法解决了这个问题。

问题是我生成的垃圾邮件得分为2.0,并且我的主机阻止了垃圾邮件得分为2或更高的任何内容。

我的主机很友好,可以向我发送邮件网关日志,该日志告诉我造成垃圾邮件评分的原因。

我可以通过在from标头中添加名称并添加date标头来解决此问题

'From' => '"Gamer Finder" <messenger@gamerfinder.net>',
        'To' => 'email@gmail.com',
        'Subject' => $subject,
        'Date'  => date("r")

因此,对于有类似问题的任何人,请进行一些研究,找出可以触发垃圾邮件规则的内容,并确保您不会触发它们:)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM