在GoDaddy服务器上拒绝PHP Mailer SMTP连接

时间:2017-02-15 10:59:10

标签: php email

我使用phpmailer(smtp)发送电子邮件。我的网站托管在Godaddy上。 我已经读过phpmailer没与Godaddy合作。因此尝试了多种解决方案来发送电但没有任何效果。 错误消息显示 SMTP - >错误:无法连接到服务器:连接被拒绝(111)SMTP连接()失败。

在这里添加代码,帮助解决问题。

<?php
require 'vendor/autoload.php';;
$body = 'Hi this is test message';
$mail             = new PHPMailer();
$mail->IsSMTP(); // telling the class to use SMTP
$mail->Host       = "relay-hosting.secureserver.net"; // SMTP server            
$mail->SMTPDebug  = 2;  
$mail->Debugoutput = 'html';
$mail->SMTPAuth   = true;                  // enable SMTP authentication
$mail->Port       = 25;                    // set the SMTP port for the GMAIL server
$mail->Username   = "name@domain.com"; // SMTP account username
$mail->Password   = "*****";

$mail->SetFrom('name@domain.com', 'Web developer');

$mail->Subject    = "PHPMailer Test Subject via smtp, basic with authentication";
 $mail->MsgHTML($body);
$address = "toname@domain.com";
$mail->AddAddress($address, "John Doe");
    if(!$mail->Send()) {
echo "Mailer Error: " . $mail->ErrorInfo;
} else {
echo "Message sent!";
}

&GT;

2 个答案:

答案 0 :(得分:2)

设置SMTPOptions可以解决我的问题。

 <?php
 require 'vendor/autoload.php';;
 $body = 'Hi this is test message';
 $mail             = new PHPMailer();
 $mail->IsSMTP(); // telling the class to use SMTP
 $mail->SMTPOptions = [
        'ssl' => [
            'verify_peer' => false,
            'verify_peer_name' => false,
            'allow_self_signed' => true,
        ],
    ];
  $mail->Host       = "mail.domain.com"; // SMTP server            
  $mail->SMTPDebug  = 2;  
  $mail->Debugoutput = 'html';
  $mail->SMTPAuth   = true;                  // enable SMTP authentication
  $mail->SMTPSecure = ''; // Enable TLS encryption, `ssl` also accepted
  $mail->Port = 587;

  $mail->Username   = "name@domain.com"; // SMTP account username
  $mail->Password   = "*****";

  $mail->SetFrom('name@domain.com', 'Web developer');

  $mail->Subject    = "PHPMailer Test Subject via smtp, basic with authentication";
  $mail->MsgHTML($body);
  $address = "toname@domain.com";
  $mail->AddAddress($address, "John Doe");
  if(!$mail->Send()) {
     echo "Mailer Error: " . $mail->ErrorInfo;
   } else {
     echo "Message sent!";
   }
 ?>

答案 1 :(得分:0)

更改MX记录设置并检查一次。 在cPanel邮件部分中搜索MX条目维护。 然后选择相关域并将电子邮件路由更改为远程邮件交换器。 添加所有Google MX记录,因为它们位于您的域配置中。 有关如何配置域Click here

的更多详细信息

并将SMTP_SERVER设置为localhost,如此SMTP_SERVER:localhost