Maily na localhostu fungují, na serveru hází výjimku

Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
Elethber
Člen | 14
+
0
-

Dobrý den,

snažím se už nějakou dobu rozchodit na produkční serveru odesílání mailů přes SMTP mailer. Na localhostu vše funguje, ale na serveru to vždy hodí výjimku Nette\Mail\SmtpException bez jakékoliv jiné zprávy.

Ve výjimce vidím, že odesílání spadne na

if (!$this->connection) {
	$this->connect();
}

ale víc mi to neukáže. Když si dumpnu mailer, tak je vidět, že nastavení se z configu vytáhne správně.

Vytvoření maileru:

public function __construct(\Nette\Mail\IMailer $mailer)
    {
        $this->smtpMailer = $mailer;
    }

Odeslání mailu:

public function send(Message $mail)
    {
        $this->smtpMailer->send($mail);
    }

Nastavení configu (stejné pro produkční i vývojové prostředí)

mail:
	    smtp: true
	    host: "smtp.gmail.com"
	    port: 465
	    username: "username@gmail.com"
	    password: "mojesuperheslo"
	    secure: "ssl"

Po rozchození mailů na localhostu to nejdříve nefungovalo všem z týmu, ale pak se maily záhadně začaly odesílat, nebo pomohl reinstall systému, takže si myslím, že by chyba nemusela být v aplikaci, ale zase moc nevím, kde jinde bych ji měl hledat.

Na druhou stranu, když se pokusím odeslat mail ze serveru přes příkazovou řádku například přes mutt, tak se v pořádku odešle…

Nevíte, co dělám špatně? Díky za jakoukoliv pomoc.

chemix
Nette Core | 1296
+
0
-

Ahoj
co jsem se tak koukal tak port 465 se pouziva pro sifrovanou smtp komunikaci, tak me napada zdali treba neni problem v teto vrstve na serveru?

iguana007
Člen | 970
+
0
-

Podíval bych se do logu smtp serveru, tam by si měl viděl detailnější popis chyby a podle toho bych potom postupoval dále.

HonzaN
Člen | 64
+
0
-

Zkus port 587.

Elethber
Člen | 14
+
0
-

chemix napsal(a):

Ahoj
co jsem se tak koukal tak port 465 se pouziva pro sifrovanou smtp komunikaci, tak me napada zdali treba neni problem v teto vrstve na serveru?

Je možné, že server nepodporuje šifrovanou komunikaci…
Musel bych tedy používat klasický SendmailMailer?

Elethber
Člen | 14
+
0
-

HonzaN napsal(a):

Zkus port 587.

Zkusil jsem a pořád stejná chyba :(

iguana007
Člen | 970
+
0
-

Elethber napsal(a):
Zkusil jsem a pořád stejná chyba :(

A co je v tom logu? Díval ses tam?

Elethber
Člen | 14
+
0
-

iguana007 napsal(a):

Elethber napsal(a):
Zkusil jsem a pořád stejná chyba :(

A co je v tom logu? Díval ses tam?

Do logu se nedostanu, když se to odesílá přes smtp.google.com, ne? Pokud ano, tak jak?

iguana007
Člen | 970
+
0
-

Aha, promiň, přehlédl jsem v tom configu ten gmail :(
Zkusil bych ještě parametr secure změnit na „tls“ a port na 587

Editoval iguana007 (14. 10. 2015 23:24)

Elethber
Člen | 14
+
0
-

iguana007 napsal(a):

Aha, promiň, přehlédl jsem v tom configu ten gmail :(
Zkusil bych ještě parametr secure změnit na „tls“ a port na 587

To mi hlásí, že se nepovedlo připojit k tls :/

norbe
Backer | 405
+
+1
-

Zkus napsat na podporu hostingu jestli není zakázaná odchozí komunikace na tyhle porty..

Elethber
Člen | 14
+
0
-

VYŘESENO

Přeinstaloval jsem xampp a maily najednou odcházejí, nevím, kde byl problém…