Nelze poslat email přes SmtpMailer a TLS a 587
- chladekt
- Člen | 10
Nefunguje mi poslat email pres SmtpMailer, TLS a port 587. Pri tom port 25 jde. A jde i poslat mail pres PHPMailer s ekvivalentnim nastavenim – port 587 a TLS.
Zobrazovana chyba:
Nette\Mail\SmtpException: SMTP server did not accept AUTH LOGIN with error: 530
5.7.0 Must issue a STARTTLS command first in
/var/www/…/vendor/nette/mail/src/Mail/SmtpMailer.php:236
Procetl jsem si diskuse tady na foru i dokumentaci nette k mailum. Bohuzel jsem nic nenasel. Prijde mi, ze to vypada na bug nette.
Verze nette/mail: 3.1.10
Verze PHPMaileru: 5.2.1
Mohl byste mě někdo popostrčit k řešení?
Detaily:
Kod pro nette:
$mail = new \Nette\Mail\Message;
$mail->setFrom('info@forms.3zsvm.cz')
->addTo('tomas.chladek@xart.cz')
->setSubject('Potvrzení objednávky')
->setBody("Dobrý den,\nvaše objednávka byla přijata.");
$mailer = new \Nette\Mail\SmtpMailer([
'host' => 'pecari-smtp-forms.xart.cz',
'username' => 'info@forms.3zsvm.cz',
'password' => 'xxx',
'encryption' => 'tls',
'port' => '587'
]);
$mailer->send($mail);
Kod pro PHPMailer:
$mail = new PHPMailer(true);
$mail->CharSet = 'UTF-8';
$mail->Encoding = 'base64';
$mail->SMTPDebug = 3;
$mail->Timeout = 60;
$mail->isSMTP();
$mail->Host = "pecari-smtp-forms.xart.cz";
$mail->SMTPAuth = true;
$mail->Username = 'info@forms.3zsvm.cz';
$mail->Password = 'xxxx';
$mail->SMTPSecure = "tls";
$mail->Port = 587;
$mail->ReturnPath = "info@forms.3zsvm.cz";
$mail->From = "info@forms.3zsvm.cz";
$mail->FromName = "Full Name";
$mail->addAddress("tomas.chladek@xart.cz", "Recepient Name");
$mail->isHTML(true);
$mail->Subject = "Subject Text";
$mail->Body = "<i>Mail body in HTML</i>";
$mail->send();
- nightfish
- Člen | 518
@chladekt V nette/mail
v3.1 se parametr pro
předávání módu zabezpečení nazýval secure
, nikoliv
encryption
. Viz zdroják.
EDIT: Což se koneckonců dá vyčíst i z dokumentace k verzi 3.
Editoval nightfish (6. 3. 20:32)
- admin@easyweb4u.cz
- Backer | 146
Měl jsem podobný problém na Websupport, oni blokují odesílání pokud FROM nesouhlasí s SMTP schránkou. Já jsem pak raději přešel na SendmailMailer, to sice problém neřeší, ale funguje to nepoměrně rychleji.
- chladekt
- Člen | 10
nightfish napsal(a):
@chladekt V
nette/mail
v3.1 se parametr pro předávání módu zabezpečení nazývalsecure
, nikolivencryption
. Viz zdroják.EDIT: Což se koneckonců dá vyčíst i z dokumentace k verzi 3.
Tak to jsem přehlédl. Se secure to funguje. Děkuji.