Autor | Zpráva | ||
---|---|---|---|
Sylar Profil |
#1 · Zasláno: 17. 2. 2012, 19:12:28
Zdravím,
zkouším rozchodit vracející se e-maily v případě, že nebyly doručeny, ale nějak se mi to nedaří. Na posílání e-mailů mám fci function email($to, $subject, $text, $from_mail, $from = "", $html = false) { $subject = "=?utf-8?B?" . base64_encode($subject) . "?="; $header = "MIME-Version: 1.0\r\n"; $header .= "Content-Type: text/" . ($html == true ? "html" : "plain") . "; charset=utf-8\r\n"; $header .= "From: =?UTF-8?B?" . base64_encode((empty($from) ? $from_mail : $from)) . "?=<" . $from_mail . ">\r\n"; $header .= "Return-Path: " . $from_mail . "\r\n"; mail($to, $subject, $text, $header); } |
||
Dědek Profil |
#2 · Zasláno: 18. 2. 2012, 02:39:03
Skript jsem vyzkoušel a mě funguje podle představy, ani nemusí být nastavena hlavička "return-path", stačí "from".
Zkusil bych ten mail poslat ručně, jestli se opravdu vrátí mail s chybovým hlášením? Nepadá náhodou mail se zprávou o chybě do spamu? |
||
Sylar Profil |
#3 · Zasláno: 18. 2. 2012, 13:19:37
Dědek:
takže ty když pošleš přes tento script email na neexistující adresu tak se ti vrátí, že nebyl doručen? Teď jsem to zkošuel poslat i ručně z outlooku a vrátilo se mi to prakticky okamžitě. Do spamu mě v outlooku to nepadá, jedině by to mohl zachycovat server, ale to by zřejmě zachytil i při tom ručním odeslání ... to jsem z toho jelen. Zkusím napsat podpoře hostingu, snad se mi k tomu nějak vyjádří. |
||
Dědek Profil |
Ano, přesně tak - do
$to dám neexistující adresu a během několika chvil mám v mailové schránce uvedené v $from_mail chybové hlášení.
P.S. zkoušeno na lokále, mailová schránka je gmail |
||
Davex Profil |
#5 · Zasláno: 18. 2. 2012, 23:35:26
Sylar:
Mám takové tušení, že tu adresu v Return-Path přepíše mailserver na e-mailovou adresu sendmail_from v konfiguraci PHP nebo uživatele pod kterým běží webserver, protože to je ten skutečný odesílatel. Pošli si e-mail na funkční adresu a podívej se na hlavičku. Nemáš-li na serveru zapnutý safe_mode, tak zkus využít pátý parametr funkce mail() : "-f$from_mail" .
Dědek: Asi ti to funguje, protože to zkoušíš na Windows, kde by se měla hlavička Return-Path nastavovat na stejnou hodnotu jako je From . Na Linuxu funguje posílání e-mailů z PHP jinak.
|
||
Dědek Profil |
#6 · Zasláno: 19. 2. 2012, 00:36:10
Davex:
Máš absolutní pravdu, zkusil jsem to pod Linuxem a opravdu došlo k přepsání hlavičky Return-Path podle konfigurace PHP :(
|
||
Časová prodleva: 9 dní
|
|||
Sylar Profil |
#7 · Zasláno: 27. 2. 2012, 19:12:31
Davex:
máš pravdu, jedinou možností je vypnout save_mode a použít pátý parametr u mail() díky oběma |
||
Časová prodleva: 12 let
|
0