Neu JTL Shop 5 SMTP- Anbindung funktioniert nicht

Vanessavo

Mitglied
17. November 2021
10
1
Hallo,
wir nutzen aktuell noch den JTL 5 Testhop, wollen diesen aber demnächst live schalten.
Leider ist es bisher nicht möglich mittels der SMTP Anbindung Mails aus dem Shop zu versenden. Die Daten wurden von unserem IT-Dienstleister eingegeben und nochmals kontrolliert, sie sind soweit korrekt.
Die gleichen Daten funktionieren auch einwandfrei in derJTL Wawi, dort ist der Mailversand möglich.

Liegt dies allgemein am Testshop oder hängt damit ein anderes Problem zusammen?

Danke für eine schnelle Hilfe.
 

Vanessavo

Mitglied
17. November 2021
10
1
Hi Dustin,
wir nutzen unseren eigenen Exchange-Server zum Versenden. Bei der Wawi funktioniert dies wie gesagt ohne Probleme.
 

Dustin

Sehr aktives Mitglied
14. Mai 2008
2.999
53
Enger
Ok, also wir haben speziell mit Hetzner Probleme, jetzt in mehreren Shops erlebt. Was komisch ist das es mit dem JTL Shop 4 ging nach Update auf den 5er nicht mehr. JTL meint das läge an Hetzner.

Gruß Dustin
 

FMoche

Moderator
Mitarbeiter
15. Dezember 2014
1.369
347
Halle (Saale)
Was genau ist denn der Fehler?
Ich habe hier mal ein kleines Testscript:
Code:
<?php

use PHPMailer\PHPMailer\Exception;
use PHPMailer\PHPMailer\SMTP;

class SmtpTest
{
    /**
     * @param array $config
     * @return bool
     */
    public function run(array $config): bool
    {
        $smtp           = new SMTP();
        $smtp->do_debug = SMTP::DEBUG_CONNECTION;
        try {
            if (!$smtp->connect($config['email_smtp_hostname'], $config['email_smtp_port'])) {
                throw new Exception('Connect failed');
            }
            if (!$smtp->hello(gethostname())) {
                throw new Exception('EHLO failed: ' . $smtp->getError()['error']);
            }
            $e = $smtp->getServerExtList();
            if (is_array($e) && array_key_exists('STARTTLS', $e)) {
                $tlsok = $smtp->startTLS();
                if (!$tlsok) {
                    throw new Exception('Failed to start encryption: ' . $smtp->getError()['error']);
                }
                if (!$smtp->hello(gethostname())) {
                    throw new Exception('EHLO (2) failed: ' . $smtp->getError()['error']);
                }
                $e = $smtp->getServerExtList();
            } elseif ($config['email_smtp_verschluesselung'] === 'tls') {
                throw new Exception('TLS not supported');
            }
            if (is_array($e) && array_key_exists('AUTH', $e)) {
                if ($smtp->authenticate($config['email_smtp_user'], $config['email_smtp_pass'])) {
                    echo 'Connected ok!';
                } else {
                    throw new Exception('Authentication failed: ' . $smtp->getError()['error']);
                }
            } else {
                throw new Exception('No authentication supported');
            }
        } catch (Exception $e) {
            echo 'SMTP error: ' . $e->getMessage(), "\n";
        }

        return $smtp->quit();
    }
}

require_once __DIR__ . '/includes/globalinclude.php';
$test = new SmtpTest();
$config = \JTL\Shop::getConfig([CONF_EMAILS])['emails'];
echo '<pre>';
$test->run($config);

Schreib diesen Inhalt mal in eine neue PHP-Datei im Hauptverzeichnis des Shops (bspws. mailtest.php), ruf es mit deinem Browser auf und schreib dann hier die Ausgabe.
 

frankw75

Mitglied
7. Februar 2022
21
4
Was genau ist denn der Fehler?
Ich habe hier mal ein kleines Testscript:
Code:
<?php

use PHPMailer\PHPMailer\Exception;
use PHPMailer\PHPMailer\SMTP;

class SmtpTest
{
    /**
     * @param array $config
     * @return bool
     */
    public function run(array $config): bool
    {
        $smtp           = new SMTP();
        $smtp->do_debug = SMTP::DEBUG_CONNECTION;
        try {
            if (!$smtp->connect($config['email_smtp_hostname'], $config['email_smtp_port'])) {
                throw new Exception('Connect failed');
            }
            if (!$smtp->hello(gethostname())) {
                throw new Exception('EHLO failed: ' . $smtp->getError()['error']);
            }
            $e = $smtp->getServerExtList();
            if (is_array($e) && array_key_exists('STARTTLS', $e)) {
                $tlsok = $smtp->startTLS();
                if (!$tlsok) {
                    throw new Exception('Failed to start encryption: ' . $smtp->getError()['error']);
                }
                if (!$smtp->hello(gethostname())) {
                    throw new Exception('EHLO (2) failed: ' . $smtp->getError()['error']);
                }
                $e = $smtp->getServerExtList();
            } elseif ($config['email_smtp_verschluesselung'] === 'tls') {
                throw new Exception('TLS not supported');
            }
            if (is_array($e) && array_key_exists('AUTH', $e)) {
                if ($smtp->authenticate($config['email_smtp_user'], $config['email_smtp_pass'])) {
                    echo 'Connected ok!';
                } else {
                    throw new Exception('Authentication failed: ' . $smtp->getError()['error']);
                }
            } else {
                throw new Exception('No authentication supported');
            }
        } catch (Exception $e) {
            echo 'SMTP error: ' . $e->getMessage(), "\n";
        }

        return $smtp->quit();
    }
}

require_once __DIR__ . '/includes/globalinclude.php';
$test = new SmtpTest();
$config = \JTL\Shop::getConfig([CONF_EMAILS])['emails'];
echo '<pre>';
$test->run($config);

Schreib diesen Inhalt mal in eine neue PHP-Datei im Hauptverzeichnis des Shops (bspws. mailtest.php), ruf es mit deinem Browser auf und schreib dann hier die Ausgabe.
Hallo, wir haben auch Probleme bei der Einrichtung einer sicheren SMTP Verbindung. Unser Anbieter ist all-inkl.com. Das Skript habe ich ausgeführt. Soll ich das Ergebnis hier posten oder persönlich senden? Lieben Dank im Voraus!
 

Jurka

Aktives Mitglied
20. April 2017
61
13
Hallo, ich kriege auch keine Verbindung eingerichtet.
Ich meine alles so zu machen, wie im Guide.

Unter "Administration" -> "E-Mail" -> "Server" habe ich alles wie im Guide eingerichet.
Als "SMTP-Hostname" habe ich sowohl mal unsere domain "yura-raeder.com" als auch die PLESK-url angegeben.
Auch beim Port habe ich sowoh Port 587 (Guide) als auch den Port aus der hinterlegten E-Mail-Adresse probiert.

Egal welche Kombination ich da eingebe, ich kriege einfach gar kein Feedback vom Kontaktformular.
Und ja, natürlich habe ich einen Betreff und eine zugehörige Empfänger-E-Mail-Adresse eingegeben. Da kommt aber nix an.

Die Die Adressen funktionieren für sich genommen aber schon.
Sind alles Adressen, die ich unter der neuen Domain erstellt habe.
Ich habe die mal in Thunderbird angebunden und testweise mal E-Mails hin und her geschickt. Läuft alles ohne Probleme.

Gibt es außer unter "Administration" -> "E-Mail" -> "Server" sowie unter "Kontaktformular" noch etwas was man einstellen muss?
Ich meine alles gelesen zu haben, wollte jetzt aber nicht noch mehr Zeit verschwenden mit blöd rumklicken.

Den thread hier

https://forum.jtl-software.de/threads/shop-5-0-kontaktformular-sendet-nichts.145001/

habe ich übrigens auch schon gesehen. Aber dort wird mein Problem nicht gelört.
 
  • Gefällt mir
Reaktionen: frankw75

Buztar

Aktives Mitglied
7. April 2017
47
3
Ich bekomme es auch nicht zum laufen.
Eigener Server, in der WaWi, in thunderbird, auf dem Handy überall geht es.
Testscript spuckt folgendes aus:

Code:
SSL loaded 2022-05-24 13:51:19 Connection: opening to ssl://*****.de:587, timeout=300, options=array()
2022-05-24 13:51:19 Connection failed. Error #2: stream_socket_client(): SSL operation failed with code 1. OpenSSL Error messages:error:140770FC:SSL routines:SSL23_GET_SERVER_HELLO:unknown protocol [/var/www/vhosts/***.aix-dev.de/httpdocs/includes/vendor/phpmailer/phpmailer/src/SMTP.php line 388]
2022-05-24 13:51:19 Connection failed. Error #2: stream_socket_client(): Failed to enable crypto [/var/www/vhosts/***.aix-dev.de/httpdocs/includes/vendor/phpmailer/phpmailer/src/SMTP.php line 388]
2022-05-24 13:51:19 Connection failed. Error #2: stream_socket_client(): Unable to connect to ssl://***.de:587 (Unknown error) [/var/www/vhosts/***.aix-dev.de/httpdocs/includes/vendor/phpmailer/phpmailer/src/SMTP.php line 388]
2022-05-24 13:51:19 SMTP ERROR: Failed to connect to server: (0)
 
  • Gefällt mir
Reaktionen: frankw75

volvisti

Sehr aktives Mitglied
18. Juli 2017
324
46
Hi,
hänge mich hier mal dran.
Habe gerade den Shop von 4 auf 5 upgrade lassen.
Jetzt wird mir angemeckert, dass meine SMTP-Security auf "KEINE" steht.
Aber wenn ich diese auf SSL mit Port 465 oder TSL mit Port 587 stelle, erhalte ich beim Versand einer Testmal anhängende Fehlermeldung.
Testmail ohne Verschlüsselung funtkioniert.
Wo liegt mein Fehler?

Danke schon mal jetzt für die Hilfe.

:(bin irgendwie zu blöd das Script auszuführen.:oops::rolleyes:
Hab es ins Root von httpdocs gelegt und dann im Browser den Shop mit angängtem Dateinamen aufgerufen. (https:\\Shop-name.de\smtp-test.php\
Kann mir da vielleicht jemand auf die Sprünge helfen?

Danke auch dafür
 

Anhänge

  • 2022-06-02 12_07_07-Administration von JTL-Shop.jpg
    2022-06-02 12_07_07-Administration von JTL-Shop.jpg
    32,5 KB · Aufrufe: 28

volvisti

Sehr aktives Mitglied
18. Juli 2017
324
46
Hallo zusammen,
bei mir funzt es jetzt, nachdem der Support mir dei Lösung verraten hat.
folgende Einstellungen müssen gemacht werden:

E-Mails versenden per: SMTP
Sendmail-Pfad: leer
SMTP-Hostname: shop000.jtl- hosting.de
SMTP-Port: 587
SMTP-Auth benutzen: Ja
SMTP-Benutzername: Eine gültige E-Mail-Adresse aus der Shop-Domäne
SMTP-Passwort: Das zu der E-Mail-Adresse gehörende Passwort
SMTP-Security: TLS
Master-E-Mail-Adresse: Eine gültige E-Mail-Adresse aus der Shop-Domäne
Master-E-Mail-Absendername: Beliebig

Die "000" ist die Nummer, die Ihr auch zum Zugriff auf Plesk angeben müsst.

Hoffe geholfen zu haben.
 
  • Gefällt mir
Reaktionen: MickyMa und Ryja

spaxxilein

Sehr aktives Mitglied
27. November 2013
516
112
Was genau ist denn der Fehler?
Ich habe hier mal ein kleines Testscript:
Code:
<?php

use PHPMailer\PHPMailer\Exception;
use PHPMailer\PHPMailer\SMTP;

class SmtpTest
{
    /**
     * @param array $config
     * @return bool
     */
    public function run(array $config): bool
    {
        $smtp           = new SMTP();
        $smtp->do_debug = SMTP::DEBUG_CONNECTION;
        try {
            if (!$smtp->connect($config['email_smtp_hostname'], $config['email_smtp_port'])) {
                throw new Exception('Connect failed');
            }
            if (!$smtp->hello(gethostname())) {
                throw new Exception('EHLO failed: ' . $smtp->getError()['error']);
            }
            $e = $smtp->getServerExtList();
            if (is_array($e) && array_key_exists('STARTTLS', $e)) {
                $tlsok = $smtp->startTLS();
                if (!$tlsok) {
                    throw new Exception('Failed to start encryption: ' . $smtp->getError()['error']);
                }
                if (!$smtp->hello(gethostname())) {
                    throw new Exception('EHLO (2) failed: ' . $smtp->getError()['error']);
                }
                $e = $smtp->getServerExtList();
            } elseif ($config['email_smtp_verschluesselung'] === 'tls') {
                throw new Exception('TLS not supported');
            }
            if (is_array($e) && array_key_exists('AUTH', $e)) {
                if ($smtp->authenticate($config['email_smtp_user'], $config['email_smtp_pass'])) {
                    echo 'Connected ok!';
                } else {
                    throw new Exception('Authentication failed: ' . $smtp->getError()['error']);
                }
            } else {
                throw new Exception('No authentication supported');
            }
        } catch (Exception $e) {
            echo 'SMTP error: ' . $e->getMessage(), "\n";
        }

        return $smtp->quit();
    }
}

require_once __DIR__ . '/includes/globalinclude.php';
$test = new SmtpTest();
$config = \JTL\Shop::getConfig([CONF_EMAILS])['emails'];
echo '<pre>';
$test->run($config);

Schreib diesen Inhalt mal in eine neue PHP-Datei im Hauptverzeichnis des Shops (bspws. mailtest.php), ruf es mit deinem Browser auf und schreib dann hier die Ausgabe.
Obwohl ich als SMTP Port 587 angegeben habe erhalte ich immer folgendes Ergebnis:

Code:
2023-02-21 14:48:12    Connection: opening to mail.XXX.de:465, timeout=30, options=array()
2023-02-21 14:48:12    Connection: opened
2023-02-21 14:48:31    SERVER -> CLIENT:
2023-02-21 14:48:31    Connection: closing due to error
2023-02-21 14:48:31    Connection: closed
SMTP error: Connect failed

irgendeine Idee wieso er den Port aus dem Webinterface nicht übernimmt!? Der test im Webinterface läuft ohne Probleme durch - Mails verschicken kann ich leider trotzdem nicht. Ich vermute es liegt daran, dass er intern Port 465 nimmt obwohl der nirgendwo eingestellt ist.
 

t.oster

Gut bekanntes Mitglied
4. Dezember 2013
210
24
Obwohl ich als SMTP Port 587 angegeben habe erhalte ich immer folgendes Ergebnis:

Code:
2023-02-21 14:48:12    Connection: opening to mail.XXX.de:465, timeout=30, options=array()
2023-02-21 14:48:12    Connection: opened
2023-02-21 14:48:31    SERVER -> CLIENT:
2023-02-21 14:48:31    Connection: closing due to error
2023-02-21 14:48:31    Connection: closed
SMTP error: Connect failed

irgendeine Idee wieso er den Port aus dem Webinterface nicht übernimmt!? Der test im Webinterface läuft ohne Probleme durch - Mails verschicken kann ich leider trotzdem nicht. Ich vermute es liegt daran, dass er intern Port 465 nimmt obwohl der nirgendwo eingestellt ist.
Hi, ich glaube ich bin gerade auf das gleiche Problem gestoßen. In den Servereinstellungen mit Speichern und Testen funktioniert es, aber das eigentliche Versenden nicht. Bei Hetzner ist Port 465 ausgehend gesperrt, 587 geht aber. Wenn er natürlich nicht den richtigen Port nimmt, würde es das erklären.

Haben Sie schon eine Lösung gefunden? Ich werde mich jetzt mal durch den Quellcode wühlen und prüfen, ob der Port 465 irgendwo hard-coded steht.
 

t.oster

Gut bekanntes Mitglied
4. Dezember 2013
210
24
Danke für die Antwort. Beim Debuggen habe ich festgestellt, dass es ein Fehler mit der SSL Version war. Wenn man TLS auswählt geht es, aber anscheinend macht er beim "Speichern und Testen" immer TLS, auch wenn SSL gewählt ist. Es lag also nicht am Port, sondern an der TLS Einstellung. Heisst aber, der Test evtl mit anderen Parametern ausgeführt als der echte Versand. Ich habe jetzt leider keine Zeit das zu verifizieren, aber wenn das so ist, sollte man das korrigieren.
 
  • Gefällt mir
Reaktionen: voodoo33000 und sah

voodoo33000

Mitglied
18. Juni 2025
8
6
Danke für die Antwort. Beim Debuggen habe ich festgestellt, dass es ein Fehler mit der SSL Version war. Wenn man TLS auswählt geht es, aber anscheinend macht er beim "Speichern und Testen" immer TLS, auch wenn SSL gewählt ist. Es lag also nicht am Port, sondern an der TLS Einstellung. Heisst aber, der Test evtl mit anderen Parametern ausgeführt als der echte Versand. Ich habe jetzt leider keine Zeit das zu verifizieren, aber wenn das so ist, sollte man das korrigieren.
Such es dir aus, virtuelles Bier oder virtuelles Heißgetränk 🍺 - Das war es auch bei mir... sollte man echt mal korrigieren
 

t.oster

Gut bekanntes Mitglied
4. Dezember 2013
210
24
Danke, ich nehme das virtuelle Bier. Leider habe ich keine Zeit für jeden Bug den ich bei JTL finde ein Ticket zu öffnen, da leider oft die Antwort kommt: Sie dürfen gerne dafür voten, dass wir einen offensichtlichen Bug korrigieren. Aber wenn jemand die Muße hat, gerne Ticket eröffnen und verlinken. Beim Shop könnte man ja sogar selbst den Fehler beheben und einen Pull-Request machen.
 
  • Gefällt mir
Reaktionen: sah
Ähnliche Themen
Titel Forum Antworten Datum
Neu Shop 5.7.2 - JTL PayPal Checkout legt alles lahm JTL-Shop - Fehler und Bugs 4
Neu JTL Shop Plugin - BD Automatisierter Widerruf (Von Händler für Händler - Schluss mit Mail-Chaos & Spam-Sorgen!) Plugins für JTL-Shop 0
Neu Welche JTL Shop Plugins oder kleinen Hilfstools würden euch im Alltag wirklich helfen? Plugins für JTL-Shop 0
Neu Plugin: JTL Exportformat Google Shopping gibt <g:google_product_category> unter Shop 5.7.1 und Wawi 2.0.4 nicht aus Plugins für JTL-Shop 1
Neu Widerrufsbutton für JTL-Shop 4 Allgemeine Fragen zu JTL-Shop 17
Neu Rabatte aus dem JTL-Shop werden in der Wawi nur als Netto-Preis übernommen, Rabatt % gehen verloren Onlineshop-Anbindung 0
Neu JTL-Shop - Wechsel von Test zum Livebetrieb - was beachten ? Installation / Updates von JTL-Shop 2
Neu Meta Shop seit September 2025: JTL-Lösung für neue Checkout-URL gesucht Allgemeine Fragen zu JTL-Shop 0
Rabatt Coupons in Verbindung mit Staffelpreisen - JTL 1.11.9, JTL Shop JTL-Wawi 1.11 0
Fehler beim Abgleich mit dem JTL-Shop JTL-Wawi 2.0 12
Neu OnFinds: KI-Suche für JTL-Shop mit fairer Abrechnung nach Artikelanzahl. 30 Tage kostenlos testen Plugins für JTL-Shop 0
Neu Freelancer für JTL-Wawi, Shop & Prozessautomatisierung Dienstleistung, Jobs und Ähnliches 2
Neu JTL Shop 5.7.1 mit Fehlern - versandarten zahlungsarten nicht änderbar, leere weiße Seite JTL-Shop - Fehler und Bugs 5
Neu Massiver jtl-shop-cron aufruf JTL-Shop - Fehler und Bugs 7
Neu Neues Plugin: Erweiterter Widerrufsbutton für JTL-Shop Plugins für JTL-Shop 9
Neu [Suche 5 Beta-Tester] KI generiert JTL Shop 5 Templates per Beschreibung – kostenlos testen Templates für JTL-Shop 7
Neu Telemetrie-Datenerfassung in JTL-Shop 5.7.0: Bitte um Klarstellung der DSGVO-relevanten Aspekte Allgemeine Fragen zu JTL-Shop 5
JTL Shop 4 Upgrade auf 5.5.0 --> Fehler 500 Upgrade JTL-Shop4 auf JTL-Shop5 2
JTL Shop 4 Upgrade auf 5.5.0 --> Fehler 404 Upgrade JTL-Shop4 auf JTL-Shop5 11
Neu JTL Shop 5 und Klarna Plugins für JTL-Shop 0
Neu JTL Shop 5.7 - Widerrufsbutton im B2B Templates für JTL-Shop 18
Neu Dropdown jtl shop länge einstellen Allgemeine Fragen zu JTL-Shop 2
JTL-Shop 5.7.0 Widerrufsbutton Einrichtung JTL-Shop5 42
Neu JTL Shop Template Snackys Bildgrößen einstellen Templates für JTL-Shop 1
Neu JTL-Shop 5.7 - Aktuell 5.7.2 Releaseforum 2
Neu Gratisgeschenke im JTL Shop nicht wirklich nutzerfreundlich. Allgemeine Fragen zu JTL-Shop 4
JTL-Ameise 2.04 - Export Rechnungen csv - unvollständig JTL-Wawi 2.0 12
Neu Belege aus JTL Wawi zu Lexoffice Schnittstellen Import / Export 5
Neu Varianten die nicht online in JTL geschaltet sind werden trotzdem zu Shopify geladen Shopify-Connector 2
Neu Gesucht: JTL-Systempartner/Freelancer mit Erfahrung in Personalisierungs-/Gravur-Fulfillment Dienstleistung, Jobs und Ähnliches 2
Neu JTL Stammtisch Stuttgart Messen, Stammtische und interessante Events 0
Neu Copy/Paste Abstürze seit JTL-Wawi 2.0.5 User helfen Usern - Fragen zu JTL-Wawi 4
Gelöst: Störung bei LInk11 - JTL- Shops teilweise nicht erreichbar Störungsmeldungen 1
JTL Update auf 1.9 , danach Import Kundenspezifrische Preise velerhaft JTL-Wawi 1.9 0
Wie übernehme ich Artikelnamen von JTL in den neuen Kaufland Niederlande-Verkaufskanal? JTL-Wawi 1.11 1
Neu Wie stelle ich Retouren in JTL für DPD ein? JTL-ShippingLabels - Ideen, Lob und Kritik 1
Neu JTL Wawi 1.11.11 - Zahlungsabgleich bei FYRST Bank verlangt immer Passwort User helfen Usern - Fragen zu JTL-Wawi 0
Neu Der wahrscheinlich östlichste JTL Servicepartner: Standortvorteil, faire Preise und vieles mehr Dienstleistung, Jobs und Ähnliches 16
Neu JTL ShippingLabels - Meldungen JTL-ShippingLabels - Fehler und Bugs 7
Neu Beta-Tester gesucht: Produktdaten aus Artikelfotos schneller für JTL/CSV vorbereiten Dienstleistung, Jobs und Ähnliches 0
Neu oAuth Credentials Login mit JTL .. WO? User helfen Usern 1
Neu Installationsdatei für JTL‑Wawi 1.9.6.5 Installation von JTL-Wawi 2
Neu kostenlos: DHL Sendungsverfolgung für JTL-Wawi – Web-Dashboard mit Frühwarnsystem Schnittstellen Import / Export 0
Neu JTL Wawi 2.0 oder höher WooCommerce-Connector 0
Changelog jtl Wawi 2.0.5 JTL-Wawi 2.0 10
Neu Ist es ohne Probleme möglich Cloudflare in der Free Version mit JTL zu nutzen? Allgemeine Fragen zu JTL-Shop 7
JTL 5.7.1 Widerrufsformular massiver SPAM Einrichtung JTL-Shop5 3
JTL Wawi 1.11.xx langsam unbenutzbar! JTL-Wawi 1.11 4
JTL Anmeldung letzter Benutzer JTL-Wawi 1.11 3
Test-Kunden als solche in JTL markieren, um die Auswertungen sauber zu halten? JTL-Wawi 1.11 1

Ähnliche Themen