wake-up-neo.net

PHPMailer GoDaddy Server SMTP-Verbindung abgelehnt

Neulich hatte ich Probleme mit meiner von GoDaddy gehosteten Site. Ich rief den technischen Support an und die Person, mit der ich sprach, vermutete, dass meine Probleme mit der Tatsache zusammenhängen, dass ich auf einer Windows-Box war und auf einer Linux-Box besser bedient werden könnte. Da ich keine Meinung dazu hatte, stimmte ich zu und sie wechselten mich.

Im Zuge dieses Übergangs hat mich meine PHPMailer-Funktionalität im Stich gelassen. Ich habe monatelang damit gearbeitet, daher weiß ich, dass meine Einstellungen korrekt sind. Ich habe mit GoDaddy bestätigt, dass sich der Account, von dem ich versuche zu senden, aus ihrer Sicht nicht geändert hat. Auf der Benutzerseite wurden keine Änderungen vorgenommen (wie ein neues Passwort). Unterm Strich ist das einzige, was anders ist, dass meine Site jetzt auf einem Linux-Server gehostet wird. Das ist es.

Daher gehe ich davon aus, dass meine PHPMailer-Schwierigkeiten damit zusammenhängen müssen, da es zu zufällig ist, dass ein Skript, das seit Monaten funktioniert, genau zum Zeitpunkt des Serverwechsels fehlschlägt. Aber warum? Ich habe eine Stunde mit ihrem technischen Support verbracht, und sie sehen nichts Falsches an den Servereinstellungen. Wir haben meine Einstellungen überprüft (nur zum Spaß). Alles sieht gut aus, aber wenn ich eine E-Mail sende, erhalte ich folgende Fehlermeldung:

SMTP -> ERROR: Failed to connect to server: Connection refused (111)SMTP Connect() failed.

Es gibt viele Beiträge zu dieser Art von Fehlern, und fast alle beziehen sich auf Personen, die zum ersten Mal eingerichtet werden und Einstellungen falsch eingegeben oder ausgelassen haben. Ich weiß jedoch, dass meine Einstellungen vollständig und genau sind, da ich sie seit Monaten erfolgreich verwende. Ich werde sie der Vollständigkeit halber hier posten:

$mail = new PHPMailer();
$mail->IsSMTP();  //telling the class to use SMTP
$mail->isHTML(true);
$mail->Host         = "smtpout.secureserver.net"; //also tried "relay-hosting.secureserver.net"
$mail->WordWrap     = 50;
$mail->SMTPAuth     = true;
$mail->SMTPSecure   = "ssl";
$mail->Port         = 465;
$mail->Username     = "[email protected]";
$mail->Password     = *******;
$mail->Subject      = "Test Email";
$mail->SMTPDebug = 1;

Hat jemand eine Idee, warum dies passieren könnte? Gibt es eine Servereinstellung, die dem technischen Support möglicherweise nicht bekannt ist, z. B. in meiner Datei php.ini? Der Typ, mit dem ich zusammengearbeitet habe, hat sein Bestes gegeben, um mir zu helfen, aber er weiß vielleicht nichts.

Jede Hilfe wird geschätzt. Lassen Sie mich wissen, ob ich weitere Informationen liefern kann. Vielen Dank!

EDIT: Ich sollte auch einige der anderen Versuche erwähnen, die ich gemacht habe. Ich bekomme das gleiche Ergebnis, egal was passiert.

1) TLS mit Port 587 2) Ohne SSL über die Ports 25, 80 und 3535. 2) Meine eigene Google Mail-Adresse zum Ändern des Servers, des Benutzernamens, des Kennworts usw.

24
Alex

Da es sich anscheinend um ein anhaltendes Problem handelt, möchte ich meine eigene Erfahrung hinzufügen.

Unsere Website verwendet PHPMailer und die Website wird auf einem GoDaddy-Linux-Server gehostet. Die Einstellungen, die anscheinend korrekt waren (gemäß allem, was ich auf SO und der goDaddy-Support-Site finden konnte) waren wie folgt:

SMTP_SERVER: smtpout.secureserver.net (or alternatively relay-hosting.secureserver.net)
SMTP_PORT: 465 //or 3535 or 80 or 25
SMTP_AUTH: true //always
SMTP_Secure: 'ssl' //only if using port 465

Nachdem Sie mehr als 6 Stunden damit verbracht hatten, jede Portvariation (25, 3535, 4655) auszuprobieren, haben die Server relay-hosting.secureserver.net, smtpout.secureserver.net: [port] usw.), Benutzernamen, Kennwörter usw. Ich habe goDaddy angerufen. Weitere 40 Minuten später stellte sich heraus, dass:

1) Die E-Mail-Konten "Arbeitsbereich" werden zurückgezogen. Das ist wichtig, denn wenn Sie heute ein E-Mail-Konto bei goDaddy haben, haben Sie wahrscheinlich ein Workspace-Konto. Laut dem technischen Support-Mitarbeiter wird dies separat von Ihrem Linux-Konto gehostet.

2) goDaddy bewegt sich in Richtung cPanel-E-Mail-Konten. Hurra! Zeitplan? "... in den nächsten 2 bis 3 Jahren!"

3) Ich habe unsere Konten von Workspace zu cPanel-Konten verschoben, während ich mit dem Vertreter telefonierte. Wirklich einfach zu machen.

4) Nachdem Sie Ihre E-Mail-Konten (einschließlich der Bearbeitung Ihrer MX-Einträge) in eine cPanel-E-Mail (im Gegensatz zu einer "Workspace-E-Mail") geändert haben, sind die entsprechenden Einstellungen für eine Webformular-E-Mail mit PHPMailer folgende:

SMTP_SERVER: localhost   //(and I mean literally: "localhost"- in place of smtp.secureserver.net and relay-hosting.secureserver.net, etc.)

... und alles andere (wie oben) gleich ... 

Das mit PHPMailer erstellte Webformular hat nach dieser Änderung perfekt funktioniert!

Verwenden Sie Ihr cPaneL-E-Mail-Konto-Login (Benutzername) und Ihr Kennwort im PHPMailer-Setup. Ihre Web-E-Mails funktionieren nahtlos!

Ein zusätzlicher Bonus ist, dass Webmail (verwendet jemand dieses noch mehr?) Unter [yourdoman]\webmail abgerufen werden kann. Keine kryptischen URLs mehr zu merken! Und die Konten können IMAP oder POP sein!

Zugegeben, dies bedeutet, dass Sie die cPanel-E-Mail-Konten von goDaddy verwenden müssen, aber das Webformular einwandfrei mit PHPMailer zu arbeiten, war die wahre Belohnung!

34
globalSchmidt

Ich bin auf GoDaddy auf einem Linux wie @ surfbird0713. Bei meinem 32. Versuch funktionierte Folgendes auch für mich:

$mail2->Host = localhost;
//$mail2->SMTPAuth = false;
//$mail2->Username = '[email protected]';
//$mail2->Password = '*******';

//$mail2->SMTPSecure = 'tls';

//$mail2->Port = 465;

Ich habe es zuvor mit dem Benutzernamen, dem Login, dem Port usw. versucht. Als ich alle auskommentierte, ging es einfach mit localhost.

39
Nate Byram

Ich habe dieses Problem seit vielen Wochen erfahren. Schließlich wurde es behoben. __ Zuerst würde ich die Ursachen des Problems angeben (wie ich es erlebt habe) __. GoDaddy lässt nur den Port 25, 465, 80 zu. Sie können also keinen SMTP-Server erreichen, der keinen dieser 3 Ports verwendet. Wenn Sie jedoch SMTP von GMAIL oder einen anderen Wiedergabeserver (insbesondere von Bell Canada, Port 465) verwenden, dann jeder Die Relaisanforderung von GoDaddy wird blockiert - daher sehen Sie die Connection Refused (111). Ja, sie sind Konkurrenten bei Hosting-Diensten ... also ziehen Sie Ihre eigene Schlussfolgerung, wann sich dieses Problem zwischen ihnen lösen wird. Schlimmer noch, wenn Sie eine E-Mail von relay-hosting.secureserver.net von GoDaddy senden, haben Sie lange Schwierigkeiten Warteschlangen könnten einige Minuten dauern, um die E-Mail zu erhalten. Noch schlimmer ist, dass Personen mit E-Mail-Konto von Bell Canada (oder den verbundenen Unternehmen von Bell) keine E-Mails von diesem Relay-Server erhalten. Die E-Mails werden nicht einmal an Ihre Spam-Box gesendet! Da die E-Mail vollständig von Bell blockiert wird (ihre Ausrede = zu viel Spam von GoDaddy).

Vor kurzem habe ich das gemacht und es hat gut für mich funktioniert. Wenn Sie einen Hosting-Service bei GoDaddy haben, registrieren Sie ein E-Mail-Konto. Verwenden Sie dann dieses E-Mail-Konto (Beispiel [email protected]), und zwar mit PHPMail:

$mail = new PHPMailer();
$mail->IsSMTP();
$mail->Host = "smtpout.secureserver.net";
$mail->Username = "[email protected]"; /*Substitute with your real email*/
$mail->Password = "myverylongpassword"; /*Substitute with your real password*/
$mail->SMTPAuth = true;
$mail->Port = 80;

Dann machen Sie Ihre regelmäßigen PHPMailing-Dinge ... Das funktioniert für mich großartig. Ich hoffe, es tut dir dasselbe.

4
KLL

Nach viel Frust funktionierte das auch für mich.

include("includes/class.phpmailer.php");

date_default_timezone_set('UTC');

define('SMTP_Host','relay-hosting.secureserver.net');
define('SMTP_PORT',25);**
define('SMTP_USERNAME','[email protected]');
define('SMTP_PASSWORD','me123');
define('SMTP_AUTH',false);

$email = '[email protected]';
$firstName = 'Aravind';

$mail = new PHPMailerR();
$mail->IsSMTP();
$mail->SMTPDebug = 1;                 
$mail->SMTPAuth = SMTP_AUTH;                
$mail->Host = SMTP_Host;
$mail->Port = 25;
$mail->Username = SMTP_USERNAME;
$mail->Password = SMTP_PASSWORD;
$mail->SetFrom(SMTP_USERNAME,'AravindNC.IN');
$mail->AddReplyTo(SMTP_USERNAME,"AravindNC.IN");
$mail->Subject = "Welcome to AravindNC.IN";
$mail->AltBody = "To view the message, please use an HTML compatible email viewer!";
$mail->MsgHTML('This is a test.');
$mail->AddAddress($email, 'Aravind NC');
$mail->Send();

?>
4
Sagar Anand

dies sind Ihre SMTP-Einstellungen für GoDaddy:

require("PHPMailer-master/PHPMailerAutoload.php");
$mail = new PHPMailer();
$mail->IsSMTP();
$mail->SMTPDebug  = 2;
$mail->From = "[email protected]";
$mail->FromName = "name";
$mail->Host = "localhost"; 
$mail->SMTPAuth = false; 
$mail->SMTPSecure = false;
$mail->SMTPAutoTLS = false;
2
Abdulrehman

Ich habe das gleiche Problem, aber ich habe es versucht 

$mail->SMTPAuth = false;

und HOSTNAME: relay-hosting.secureserver.net

Und Bingoooooo funktioniert 

bitte nur einmal diese Einstellung in SMTP vornehmen

2
Chintan Gor

Mit einigen der oben genannten Ratschläge konnte ich eine schlüsselfertige Bootstrap-Site einrichten und E-Mail-Nachrichten über Shared Hosting auf GoDaddy bereitstellen. 

Ich habe einen AJAX Aufruf an email.php gemacht, der Folgendes enthielt:

 <?php

require 'PHPMailerAutoload.php';

if ($_POST) {
    $name    = $_POST['contactName'];
    $email   = $_POST['contactEmail'];
    $message = $_POST['contactMessage'];

    /* Don't touch */
    $mail = new PHPMailer();
    $mail->isSMTP();
    $mail->Host        = "relay-hosting.secureserver.net";
    $mail->SMTPAuth    = false;
    $mail->setFrom($email, $name);
    /* end */

    /* Configure the address the email will be sent to */
    $mail->addAddress('[email protected]', 'Adam InTae Gerard');
    $mail->Subject = 'Re: StackChampion Inquest';
    /* This is forwarded through a GoDaddy forwarding account */

    $mail->Body    = $message;

    if (!$mail->send()) {
        echo "Mailer Error: " . $mail->ErrorInfo;
    } else {
        echo "Message sent!";
    }
}
?> 

Ich habe hier eine funktionierende Demo zu GitHub zusammengestellt:

https://github.com/Thoughtscript/wp_postlib_godaddy_php_emailer

Die Verwendung von OpenSource ist kostenlos, aber der entsprechende Code ist oben aufgeführt. Es gibt anscheinend viele Probleme mit ihren SMTP-Servern. Ich habe festgestellt, dass Sie dies umgehen können, indem Sie die angebotenen Relay-Server verwenden, für die keine Authentifizierung erforderlich ist. Sie können jedoch weiterhin mit einem Ihrer registrierten E-Mail-Konten verknüpft werden.

Hoffe, das hilft jemandem! Prost!

2
Adam Gerard

Nachdem ich mich ein paar Tage mit diesem Problem gekämpft hatte, dachte ich, ich würde diesen Thread für 2017 aktualisieren. Hoffentlich kann ich jemandem ein paar verschwendete Stunden sparen. Ich werde bei Godaddy mit Cpanel gehostet. Es war die SMTPAutoTLS-Einstellung, die ich schließlich traf und versuchte, dass dies das fehlende Stück war. Der Fehler, den ich erhielt, lautet wie folgt:

PHP Warnung: stream_socket_enable_crypto (): Peer-Zertifikat CN = *.prod.iad2.secureserver.net' did not match expected CN=localhost 'in /home/username/public_html/classes/PHPMailer/class.smtp.php in Zeile 369

Mailer-Fehler: SMTP-Verbindung () fehlgeschlagen. https://github.com/PHPMailer/PHPMailer/wiki/Fehlerbehebung

Die folgenden PHPMailer-Einstellungen haben für mich funktioniert.

$mail->isSMTP();
$mail->Host = 'localhost';
$mail->Port = 25;
$mail->SMTPSecure = false;
$mail->SMTPAutoTLS = false;
$mail->SMTPAuth = false;  
1

Nach Godaddy, ersetzen

$mail->Host = "smtpout.secureserver.net"; //also tried "relay-hosting.secureserver.net"

mit

$mail->Host = "smtp.secureserver.net"; //also tried "relay-hosting.secureserver.net"

Es hat für mich funktioniert.

1
Chicken Man

Ändere das:

$mail->Host = 'smtpout.secureserver.net:465';
$mail->SMTPSecure = "ssl";

Zu diesem:

$mail->Host = 'smtpout.secureserver.net:25';

und es hat für mich funktioniert!

1
Ronen

Update für Januar 2015: Ich musste nur genau dieses Problem lösen. Sie benötigen ein GoDaddy Linux-Hosting mit cPanel-E-Mail-Konten:

  1. Klicken Sie im Abschnitt E-Mail-Konten neben jeder E-Mail-Adresse in einer Dropdown-Liste auf die Option 'E-Mail-Client konfigurieren'.
  2. Blättern Sie auf der nächsten Seite zu 'Manual Settings'. Hier sehen Sie, dass GoDaddy jetzt für jede E-Mail-Adresse einen eigenen eingehenden/ausgehenden Server erstellt. Verwenden Sie also den ausgehenden Server, SSL, auth: true, Port: 465, E-Mail/Passwort. 

Hoffentlich hilft das.

1
user3349250

Bei Verwendung von cPanel und WPForms in WordPress

Was mir dabei geholfen hat, ist das Erstellen einer E-Mail-Adresse aus cPanel Und die Verwendung der Einstellungen aus dem Abschnitt Manuelle Einstellungen, entweder mit SSL oder Nicht-SSL

 enter image description here

1
Arlan T

wenn auf Ihrem Hosting ein eigener E-Mail-Server vorhanden ist, verwendet Ihr E-Mail-Server die folgenden Ports: Einstellungen für GoDaddy: 

$mail->isSMTP(); 
$mail->Host = localhost; 
$mail->SMTPAuth = true;
$mail->Username = '[email protected]';
$mail->Password = 'password';

//$mail->SMTPSecure = 'tls'; 
//$mail->Port = 587;

Auf den anderen Servern müssen Sie ein Postfach mit Ihrer Domäne erstellen:

$mail->isSMTP(); 
$mail->Host = localhost; 
$mail->SMTPAuth = true;
$mail->Username = '[email protected]';
$mail->Password = 'password';

//$mail->SMTPSecure = 'tls'; 
//$mail->Port = 587;
1
Karen Danielyan

Nun, ich habe das gelöst, aber nicht auf eine gute Weise. Nachdem ich alles erschöpft hatte, was mir einfiel, warf ich meine Hände hoch und forderte GoDaddy auf, mich wieder auf den Windows-Server umzustellen. Sobald sie das taten, verschwand das Problem. Da es mir egal ist, auf welchem ​​Servertyp ich mich befinde, ist dieses Ergebnis zufriedenstellend, aber kaum zufriedenstellend.

Mein Rat an alle GoDaddy-Kunden, die glauben, dass PHPMailer korrekt eingerichtet ist, aber nicht funktioniert, ist herauszufinden, ob Sie auf einem Linux-Server arbeiten. Es sieht aus für mich so aus, als hätte GoDaddy seine Linux-Server so eingerichtet, dass diese Art von Mailtransaktion blockiert wird. Das kann ich nicht definitiv sagen, da ich das nur glaube, weil ich es nicht geschafft habe, es zum Laufen zu bringen. Aber ich kann klar sagen, dass mein PHPMailer-Setup zumindest unter Windows korrekt war.

Vielleicht hilft dies jemandem, etwas Zeit und Frust zu sparen. Wenn jemand eine bessere Idee hat, bitte posten.

1
Alex

Hatte gerade dieses Problem, kontaktierte GoDaddy und sie haben meinen MX von Local auf Remote umgestellt und das Problem wurde sofort gelöst! Nur ein Hinweis für alle, die dieses Problem noch nicht kennen.

0
Austin Tans

GoDaddy/Linux (cPanel)/PHPMailer

require_once("../include/PHPMailer-master/PHPMailerAutoload.php");

$mail = new PHPMailer();
$mail->isSMTP();
$mail->Host         = "a2plcpnXXXXX.prod.iad2.secureserver.net";
$mail->SMTPDebug    = 2; 
$mail->SMTPAuth     = true;
$mail->Username     = "your username";
$mail->Password     = "your password";
$mail->SMTPSecure   = "tls";
$mail->Port         = 587;

Sie können jederzeit die gewünschte E-Mail/Name für die $ mail-> From und $ mail-> FromName -Werte verwenden. Hoffe das hilft.

0
sysnomad

Aktualisiert am 8-25-2019 Für diejenigen, die eine Antwort auf die richtige Art und Weise suchen, Rd-Mailform und PHPmailer für Godaddy einzurichten.

Stellen Sie zunächst sicher, dass Sie die neuesten Dateien von Github haben.

Zweitens sind hier die RICHTIGEN Einstellungen für das Cpanel Email mit SMTP und GODaddy

Bearbeiten Sie die folgende Datei: rd-mailform.config.json (wenn Sie diese Datei nicht verwenden, geben Sie den Code in rd-mailform.php ein)

Die zu bearbeitende Datei lautet: rd-mailform.config.json

~~~
 "useSmtp": false,
 "Host": "localhost",              
 "port": 25,                                                     
 "username": "[email protected]",                   
 "password": "yourpasswordforthataccount",                       
 "recipientEmail":  "youremailaddress"  
~~~ 

Nachdem Sie dies erledigt haben, öffnen Sie rd-mailform.php und bearbeiten Sie die folgenden Zeilen wie folgt: // Ob die SMTP-Authentifizierung verwendet werden soll

            $mail->SMTPAuth = false;
            $mail->SMTPAutoTLS = false; 
            $mail->SMTPSecure = "tls";

Das sollte für alle Godaddy-Server funktionieren, die rd-mailform mit phpmailer verwenden

-D

0
Dave Nugent

Paddy ist ein Albtraum.

Wenn Sie ein älteres E-Mail-Konto für den Arbeitsbereich verwenden und mit cpanel nicht vertraut sind, versuchen Sie es hier

require '/home/content/94/8357694/html/SHTECH/server/PHPMailer.php';
use PHPMailer\PHPMailer\PHPMailer;

function sendmail($to,$subject,$message,$name)
{

define('SMTP_Host','relay-hosting.secureserver.net');
define('SMTP_PORT',25);
define('SMTP_AUTH',true);



              $mail             = new PHPMailer();

              $mail->IsSMTP();
              $mail -> SMTPDebug = 1;
              $mail->Host       = "smtpout.secureserver.net";
              $mail->SMTPAuth   = SMTP_AUTH;
              $mail->Port       = 80;
              $mail->Username   = "[email protected]";
              $mail->Password   = "allen1";
              //$mail->SMTPSecure = 'ssl';
              $mail->SetFrom('[email protected]', 'Cagney');
              $mail->AddReplyTo("[email protected]","Cagney");
              $mail->Subject    = $subject;
              $body             = $message;
              $mail->AltBody    = "To view the message, please use an HTML compatible email viewer!";
              $mail->MsgHTML($body);
              $address = $to;
              $mail->AddAddress($address, $name);
              if(!$mail->Send()) {
                  return 0;
              } else {
                    return 1;
              }




}
0
cagney