17.11.2013, 13:20:22
Hallo Jürgen,
seit meiner "Geburt" gilt für mich eigentlich immer: Geht nicht gibt's nicht! Gut, andere werden es als Marotte oder Verbohrtheit bezeichnen. Hatte mich schon mit mail() abgefunden, aber der Ehrgeiz blieb im Hinterkopf :kopfkratz:
Der Ehrgeiz hat gesiegt und jetzt geht es bei mgb und beim Newsletter Genius. Die korrekte Adresse lautet nämlich web02.site-bank.de - ohne smtp oder sonstwas davor/dahinter (Port 25)
Die Typen vom Support sind völlige Vollposten!! Wenn ich bedenke was die für einen Mist hoch3 geantwortet haben!
Geschafft habe ich es mit der nachfolgenden php-Testmail:
seit meiner "Geburt" gilt für mich eigentlich immer: Geht nicht gibt's nicht! Gut, andere werden es als Marotte oder Verbohrtheit bezeichnen. Hatte mich schon mit mail() abgefunden, aber der Ehrgeiz blieb im Hinterkopf :kopfkratz:
Der Ehrgeiz hat gesiegt und jetzt geht es bei mgb und beim Newsletter Genius. Die korrekte Adresse lautet nämlich web02.site-bank.de - ohne smtp oder sonstwas davor/dahinter (Port 25)
Die Typen vom Support sind völlige Vollposten!! Wenn ich bedenke was die für einen Mist hoch3 geantwortet haben!
Geschafft habe ich es mit der nachfolgenden php-Testmail:
Code:
<?php
$mxrecs = "";
echo "<center>".time()."</center>"; // Zeit ausgeben, dient der Orientierung
if(getmxrr("meineDomain.de", $mxrecs)) { // DNS-Anfrage (MX)
for($x = 0; $x < count($mxrecs); ++$x) {
echo "<br>! SMTP ".$mxrecs[$x];
}
}
$ownhost = $_SERVER['SERVER_ADDR']; // Eigener Host
$from = "xxxx@meineDomain.de"; // Sender Adresse
$to = "xxxx@deineDomain.de"; // Empfänger Adresse
$text = "irgendeine Nachricht"; // Nachricht
if(count($mxrecs) > 0) {
$cmds = array(0 => "HELLO ".$ownhost."\r\n", // Array mit SMTP-Befehlen
"MAIL FROM:<".$from.">\r\n",
"RCPT TO:<".$to.">\r\n",
"DATA\r\n",
$text."\r\n.\r\n",
"QUIT\r\n");
$address = gethostbyname($mxrecs[0]); // DNS-Anfrage (Host zu IP)
if(!$sock = socket_create(AF_INET, SOCK_STREAM, SOL_TCP)) { // Create Socket
echo "<br>".socket_strerror(socket_last_error($sock));
} else {
if(!socket_connect($sock, $address, 25)) { // Zum SMTP-Server verbinden
echo "<br>".socket_strerror(socket_last_error($sock));
} else {
$out = "";
while(strlen($out) < 3) { // Willkommens-Nachricht empfangen
$out = socket_read($sock, 2048, PHP_NORMAL_READ);
}
echo "<br> ".$out; // Empfangene Nachricht ausgeben
for($x = 0; $x < count($cmds); $x++) { // Die Liste der SMTP-Befehle durchgehen
$out = "";
$time = 0;
echo "<br> ".$cmds[$x]; // aktuellen Befehl anzeigen
socket_write($sock, $cmds[$x], strlen($cmds[$x])); // Befehl senden
while(strlen($out) < 3) { // Antwort empfangen
$out = socket_read($sock, 2048, PHP_NORMAL_READ);
$time++;
if($time >= 20) {
echo "<br>! TIMEOUT";
break;
}
}
echo "<br>< ".$out." (timeouts: ".$time.")"; // Antwort ausgeben
/* Hier müsste noch eine Fehlerkontrolle geschehen */
/* Aber das machen wir noch nicht, da wir noch eh alles per Hand machen */
}
}
socket_close($sock);
}
} else {
echo "NO MX RECORDS FOUND";
}
?>