[php] Gmail houdt mails PHPmailer tegen

Pagina: 1
Acties:

Onderwerpen


Acties:
  • 0 Henk 'm!

  • StephanVierkant
  • Registratie: Mei 2003
  • Laatst online: 08-09 16:22
Ik gebruik PHPmailer i.c.m. de SMTP-server van mijn hosting provider. Dit omdat Gmail mijn mails niet goed kan verzenden ;). E-mails naar Hotmail komt vrijwel direct aan, maar mails richting Gmail komen helemaal niet aan (dus ook niet in spamfilter).

Weet iemand waar dit aan ligt?
PHP:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
    include("../phpmailer/class.phpmailer.php");
    include("../phpmailer/class.smtp.php");
    
    $mail=new PHPMailer();
    
    $mail->IsSMTP();
    $mail->SMTPAuth   = true;                  // enable SMTP authentication

    $mail->Host       = "server";        // SMTP server

    $mail->Username       = "stephan@*****.nl";
    $mail->Password       = "********"; 

    $mail->SMTPDebug = true;

    $mail->From       = "stephan@*****.nl";
    $mail->FromName   = "********";
    $mail->Subject    = $_POST['onderwerp'];
    $mail->Body       = nl2br($_POST['bericht']);
    $mail->AltBody = "Je kunt deze mail helaas niet openen, omdat je e-mailprogramma geen HTML ondersteunt.";

    $mail->IsHTML(true); // send as HTML
    $mail->WordWrap   = 50; // set word wrap
    
    $mail->AddAddress("*****@gmail.com", "Stephan Vierkant");

    if(!$mail->Send())
    {
        echo $mail->ErrorInfo;
    }
    else
    {
        echo "<p>Verstuurd!</p>";
    }

debug:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
SMTP -> get_lines(): $data was ""
SMTP -> get_lines(): $str is "220 web02.[provider].nl ESMTP Exim 4.69 Mon, 29 Sep 2008 20:49:45 +0200"
SMTP -> get_lines(): $data is "220 web02.[provider].nl ESMTP Exim 4.69 Mon, 29 Sep 2008 20:49:45 +0200"
SMTP -> FROM SERVER:
220 web02.[provider].nl ESMTP Exim 4.69 Mon, 29 Sep 2008 20:49:45 +0200
SMTP -> get_lines(): $data was ""
SMTP -> get_lines(): $str is "250-web02.[provider].nl Hello web02.[provider].nl [123.45.67.89]"
SMTP -> get_lines(): $data is "250-web02.[provider].nl Hello web02.[provider].nl [123.45.67.89]"
SMTP -> get_lines(): $data was "250-web02.[provider].nl Hello web02.[provider].nl [123.45.67.89]"
SMTP -> get_lines(): $str is "250-SIZE 20971520"
SMTP -> get_lines(): $data is "250-web02.[provider].nl Hello web02.[provider].nl [123.45.67.89]
250-SIZE 20971520"
SMTP -> get_lines(): $data was "250-web02.[provider].nl Hello web02.[provider].nl [123.45.67.89]
250-SIZE 20971520"
SMTP -> get_lines(): $str is "250-PIPELINING"
SMTP -> get_lines(): $data is "250-web02.[provider].nl Hello web02.[provider].nl [123.45.67.89]
250-SIZE 20971520
250-PIPELINING"
SMTP -> get_lines(): $data was "250-web02.[provider].nl Hello web02.[provider].nl [123.45.67.89]
250-SIZE 20971520
250-PIPELINING"
SMTP -> get_lines(): $str is "250-AUTH PLAIN LOGIN"
SMTP -> get_lines(): $data is "250-web02.[provider].nl Hello web02.[provider].nl [123.45.67.89]
250-SIZE 20971520
250-PIPELINING
250-AUTH PLAIN LOGIN"
SMTP -> get_lines(): $data was "250-web02.[provider].nl Hello web02.[provider].nl [123.45.67.89]
250-SIZE 20971520
250-PIPELINING
250-AUTH PLAIN LOGIN"
SMTP -> get_lines(): $str is "250 HELP"
SMTP -> get_lines(): $data is "250-web02.[provider].nl Hello web02.[provider].nl [123.45.67.89]
250-SIZE 20971520
250-PIPELINING
250-AUTH PLAIN LOGIN
250 HELP"
SMTP -> FROM SERVER: 
250-web02.[provider].nl Hello web02.[provider].nl [123.45.67.89]
250-SIZE 20971520
250-PIPELINING
250-AUTH PLAIN LOGIN
250 HELP
SMTP -> get_lines(): $data was ""
SMTP -> get_lines(): $str is "334 VXNlcm5hbWU6"
SMTP -> get_lines(): $data is "334 VXNlcm5hbWU6"
SMTP -> get_lines(): $data was ""
SMTP -> get_lines(): $str is "334 UGFzc3dvcmQ6"
SMTP -> get_lines(): $data is "334 UGFzc3dvcmQ6"
SMTP -> get_lines(): $data was ""
SMTP -> get_lines(): $str is "235 Authentication succeeded"
SMTP -> get_lines(): $data is "235 Authentication succeeded"
SMTP -> get_lines(): $data was ""
SMTP -> get_lines(): $str is "250 OK"
SMTP -> get_lines(): $data is "250 OK"
SMTP -> FROM SERVER:
250 OK
SMTP -> get_lines(): $data was ""
SMTP -> get_lines(): $str is "250 Accepted"
SMTP -> get_lines(): $data is "250 Accepted"
SMTP -> FROM SERVER:
250 Accepted
SMTP -> get_lines(): $data was ""
SMTP -> get_lines(): $str is "250 Accepted"
SMTP -> get_lines(): $data is "250 Accepted"
SMTP -> FROM SERVER:
250 Accepted
SMTP -> get_lines(): $data was ""
SMTP -> get_lines(): $str is "250 Accepted"
SMTP -> get_lines(): $data is "250 Accepted"
SMTP -> FROM SERVER:
250 Accepted
SMTP -> get_lines(): $data was ""
SMTP -> get_lines(): $str is "354 Enter message, ending with "." on a line by itself"
SMTP -> get_lines(): $data is "354 Enter message, ending with "." on a line by itself"
SMTP -> FROM SERVER:
354 Enter message, ending with "." on a line by itself
SMTP -> get_lines(): $data was ""
SMTP -> get_lines(): $str is "250 OK id=1KkNoX-0004uB-1X"
SMTP -> get_lines(): $data is "250 OK id=1KkNoX-0004uB-1X"
SMTP -> FROM SERVER:
250 OK id=1KkNoX-0004uB-1X
SMTP -> get_lines(): $data was ""
SMTP -> get_lines(): $str is "221 web02.[provider].nl closing connection"
SMTP -> get_lines(): $data is "221 web02.[provider].nl closing connection"
SMTP -> FROM SERVER:
221 web02.[provider].nl closing connection

Acties:
  • 0 Henk 'm!

  • RobIII
  • Registratie: December 2001
  • Niet online

RobIII

Admin Devschuur®

^ Romeinse Ⅲ ja!

(overleden)
De output die je geeft/krijgt is van de provider; dat zegt natuurlijk geen drol over wat er bij GMail gebeurt. Zover ik kan zien krijg je een 250 OK en heeft je provider dus de mail geaccepteerd en zal 'm dus moeten verder sturen (relayen) naar GMail. Als dat niet gebeurt moet je je provider schoppen of eens heel goed controleren of je het juiste TO: adres gebruikt. Er is natuurlijk ook nog een kans dat 'ie in een spamfilter bij je provider terecht komt, maar dat zou wel heel ranzig zijn. De exacte communicatie is overigens niet (goed) uit je output te halen, daar zou je ook nog even wat verduidelijking in kunnen aanbrengen (ik ben niet bekend met PHPMailer wegens mijn aversie tegen PHP :P maar dat moet vast niet al te moeilijk zijn)

Verder; gezien je vele vragen over mail: verdiep je gewoon eens in een SMTP sessie; da's echt geen rocket science en zelfs met telnet makkelijk te debuggen.

[ Voor 29% gewijzigd door RobIII op 29-09-2008 21:21 ]

There are only two hard problems in distributed systems: 2. Exactly-once delivery 1. Guaranteed order of messages 2. Exactly-once delivery.

Je eigen tweaker.me redirect

Over mij


Acties:
  • 0 Henk 'm!

  • StephanVierkant
  • Registratie: Mei 2003
  • Laatst online: 08-09 16:22
Die 250 OK geeft hij inderdaad aan, maar kan het zijn dat door (een fout in) het script Gmail de mail weigert? Dat mijn provider op een zwarte lijst staat? (hoe test ik dat?)

Acties:
  • 0 Henk 'm!

  • RobIII
  • Registratie: December 2001
  • Niet online

RobIII

Admin Devschuur®

^ Romeinse Ⅲ ja!

(overleden)
Stephan4kant schreef op maandag 29 september 2008 @ 21:26:
Die 250 OK geeft hij inderdaad aan, maar kan het zijn dat door (een fout in) het script Gmail de mail weigert?
Again; de mailserver die je aanspreekt (boeie of dat je provider is of een andere, maar je zou het wel eens met een andere kunnen testen natuurlijk) geeft aan dat alles OK is en dus zou 'ie de mail moeten gaan relayen. Of dat gebeurt is een tweede, dat kan alleen degene die dat ding beheert zien. Als je niets in je GMail ziet (dus ook niet in de spamfolder e.d.) dan houdt het gauw op. Je zou natuurlijk ook even zelf kunnen testen d.m.v. 'direct delivery'
Stephan4kant schreef op maandag 29 september 2008 @ 21:26:
Dat mijn provider op een zwarte lijst staat? (hoe test ik dat?)
Zoals alles :?

[ Voor 3% gewijzigd door RobIII op 29-09-2008 21:42 ]

There are only two hard problems in distributed systems: 2. Exactly-once delivery 1. Guaranteed order of messages 2. Exactly-once delivery.

Je eigen tweaker.me redirect

Over mij


Acties:
  • 0 Henk 'm!

  • StephanVierkant
  • Registratie: Mei 2003
  • Laatst online: 08-09 16:22
Ik weet dat vele providers de mail wel ontvangen, alleen Gmail geeft problemen. Algemene blacklists zijn dan ook niet het probleem, ik vroeg me alleen af of Gmail nog een ander register bijhoudt.

Acties:
  • 0 Henk 'm!

  • StephanVierkant
  • Registratie: Mei 2003
  • Laatst online: 08-09 16:22
Zou het kunnen zijn dat de instellingen van de mailserver roet in het eten gooien? Ik zie dat de mail *nu* verstuurd wordt om 29 Sep 2008 21:41:26 +0200, dus bijna 20 minuten terug in te tijd. Kan dit een probleem zijn?

Acties:
  • 0 Henk 'm!

  • RobIII
  • Registratie: December 2001
  • Niet online

RobIII

Admin Devschuur®

^ Romeinse Ⅲ ja!

(overleden)
Je topic is al 50 minuten oud? Dus dan was 'ie er al zeker 30 minuten geleden geweest :?
Hoewel er doorgaans relatief weinig vertraging in bezorging van email zit kan het inderdaad voorkomen dat er zo nu en dan op willekeurig welke server een delay van een paar minuten tot zelfs een paar uur optreedt; shit happens. Dus meteen na 2 minuten moord en brand schreeuwen is sowieso niet slim ;)

[ Voor 63% gewijzigd door RobIII op 29-09-2008 22:09 ]

There are only two hard problems in distributed systems: 2. Exactly-once delivery 1. Guaranteed order of messages 2. Exactly-once delivery.

Je eigen tweaker.me redirect

Over mij


Acties:
  • 0 Henk 'm!

  • StephanVierkant
  • Registratie: Mei 2003
  • Laatst online: 08-09 16:22
RobIII schreef op maandag 29 september 2008 @ 22:02:
Je topic is al 50 minuten oud? Dus dan was 'ie er al zeker 30 minuten geleden geweest :?
Hoewel er doorgaans relatief weinig vertraging in bezorging van email zit kan het inderdaad voorkomen dat er zo nu en dan op willekeurig welke server een delay van een paar minuten tot zelfs een paar uur optreedt; shit happens. Dus meteen na 2 minuten moord en brand schreeuwen is sowieso niet slim ;)
Ik ben al een dag aan het kloten, één mailtje zou er inmiddels wel mogen zijn :P

Het gaat er meer om dat de tijdsinstelling dus niet goed lijkt (de klok van de mailserver loopt 20 minuten achter).

Acties:
  • 0 Henk 'm!

  • pistole
  • Registratie: Juli 2000
  • Nu online

pistole

Frutter

Lees je eens, zoals eerder aangegeven, in in het SMTP protocol, en ga dan eens telnetten naar poort 25 van je provider / relayer / smart host.
Als het je dan lukt om een mail naar hotmail te sturen (die aankomt) dan kan je het daarna eens proberen met een mail naar Gmail.

Als de laatste ook aankomt dan weet je dat het niet aan je provider ligt, en kan je verder kijken naar (de output van) de script.

Ik frut, dus ik epibreer


Acties:
  • 0 Henk 'm!

  • StephanVierkant
  • Registratie: Mei 2003
  • Laatst online: 08-09 16:22
Probleem is gevonden!

Ik stuur mails naar stephan@[domein].nl, die door de MX-records weer naar Gmail gaat (Google Apps, zie www.google.com/a/). De mailserver denkt echter dat [domein].nl intern is, en stuurt het dus niet door.

Nu moet de server worden verteld dat de mails wél naar buiten worden gestuurd. Een taakje voor de provider dus.

Acties:
  • 0 Henk 'm!

  • RobIII
  • Registratie: December 2001
  • Niet online

RobIII

Admin Devschuur®

^ Romeinse Ⅲ ja!

(overleden)
8)7 Zo zie je maar weer dat stap-voor-stap alles nagaan en checken en dubbelchecken zich loont. Had je dagen zoeken gescheeld ;)

There are only two hard problems in distributed systems: 2. Exactly-once delivery 1. Guaranteed order of messages 2. Exactly-once delivery.

Je eigen tweaker.me redirect

Over mij


Acties:
  • 0 Henk 'm!

  • CH4OS
  • Registratie: April 2002
  • Niet online

CH4OS

It's a kind of magic

Stephan4kant schreef op woensdag 01 oktober 2008 @ 00:02:
Probleem is gevonden!

Ik stuur mails naar stephan@[domein].nl, die door de MX-records weer naar Gmail gaat (Google Apps, zie www.google.com/a/). De mailserver denkt echter dat [domein].nl intern is, en stuurt het dus niet door.

Nu moet de server worden verteld dat de mails wél naar buiten worden gestuurd. Een taakje voor de provider dus.
Is het dan niet makkelijker of logischer, om de mail direct af te laten leveren in je GMail in plaats van een forwarder in te stellen? :)

Mocht je dat niet kunnen of willen, dan kan je bij de beheerpagina's (zoals cPanel) of zelfs de webmail van jouw provider (/ domein) zal je dat vast wel zelf kunnen instellen.

[ Voor 6% gewijzigd door CH4OS op 01-10-2008 00:13 ]


Acties:
  • 0 Henk 'm!

  • RobIII
  • Registratie: December 2001
  • Niet online

RobIII

Admin Devschuur®

^ Romeinse Ⅲ ja!

(overleden)
GJtje schreef op woensdag 01 oktober 2008 @ 00:09:
[...]
Is het dan niet makkelijker of logischer, om de mail direct af te laten leveren in je GMail in plaats van een forwarder in te stellen?
Dat staat toch volgens hem in de MX records? Of bedoel je iets anders?
Want in dat geval is enkel de mailserver van de ISP fout die die mail als 'binnen eigen netwerk' beschouwt en dus moet dat domein uit de mailserver.

There are only two hard problems in distributed systems: 2. Exactly-once delivery 1. Guaranteed order of messages 2. Exactly-once delivery.

Je eigen tweaker.me redirect

Over mij


Acties:
  • 0 Henk 'm!

  • CH4OS
  • Registratie: April 2002
  • Niet online

CH4OS

It's a kind of magic

RobIII schreef op woensdag 01 oktober 2008 @ 00:13:
Dat staat toch volgens hem in de MX records? Of bedoel je iets anders?
Want in dat geval is enkel de mailserver van de ISP fout die die mail als 'binnen eigen netwerk' beschouwt en dus moet dat domein uit de mailserver.
Ik zie het nut van het aanpassen van het MX-record niet zo, laat het script het dan direct versturen naar GMail, dan had de TS het probleem waarschijnlijk totaal niet gehad.

Wat mij dan nog bevreemd (lees: ik kan er geen verklaring voor bedenken) is waarom de mail wél bij Hotmail kwam en niet bij GMail, de TS gaf immers te kennen dat een dergelijk verzonden mailtje direct arriveerde bij Hotmail en niet bij GMail. Als het MX-record niet goed zou zijn, zou de TS hem toch ook niet bij Hotmail moeten krijgen of ben ik nou gek? :?

Acties:
  • 0 Henk 'm!

  • RobIII
  • Registratie: December 2001
  • Niet online

RobIII

Admin Devschuur®

^ Romeinse Ⅲ ja!

(overleden)
Ik denk het :P
De MX records staan goed maar omdat TS bij de SMTP server van de ISP ging afleveren (als default relaying server dus; waarna die server verder zou moeten relayen) en die SMTP server die domeinen voor "eigen" aanzag (en dus niet in de MX records ging kijken) hield de server de mails 'binnen'.
Dus als ik hem wil mailen op stephan@blaat.nl kom ik via de MX records op GMail uit, en iedereen zo. Alleen omdat de ISP die het domein blaat.nl beheert niet in z'n eigen MX records kijkt en op de SMTP van diezelfde ISP de mail afgeleverd wordt gaat het dus fout. Het werkt voor de hele wereld, behalve als je bij die ISP zou zitten en guess waar TS zijn mail dropte? :P

Dat mail op de Hotmail account wel aan kwam is waarschijnlijk omdat het andere domein niet door die ISP beheerd wordt of reeds correct in de mailserver aldaar staat.

[ Voor 43% gewijzigd door RobIII op 01-10-2008 00:38 ]

There are only two hard problems in distributed systems: 2. Exactly-once delivery 1. Guaranteed order of messages 2. Exactly-once delivery.

Je eigen tweaker.me redirect

Over mij


Acties:
  • 0 Henk 'm!

  • curry684
  • Registratie: Juni 2000
  • Laatst online: 06-09 00:37

curry684

left part of the evil twins

Stephan4kant schreef op woensdag 01 oktober 2008 @ 00:02:
Probleem is gevonden!

Ik stuur mails naar stephan@[domein].nl, die door de MX-records weer naar Gmail gaat (Google Apps, zie www.google.com/a/). De mailserver denkt echter dat [domein].nl intern is, en stuurt het dus niet door.

Nu moet de server worden verteld dat de mails wél naar buiten worden gestuurd. Een taakje voor de provider dus.
Dit is een veel voorkomend probleem bij DirectAdmin accounts en kun je vaak zelf fixen. In DA kun je dit fixen bij 'MX records' onder 'Email Management'. Daar staat default een vinkje bij 'Use this server to handle my emails' wat uit moet staan als je elders mailserver draait. Als je niet bij MX records kunt moet je admin dat even enablen voor jouw account.

Professionele website nodig?


Acties:
  • 0 Henk 'm!

  • StephanVierkant
  • Registratie: Mei 2003
  • Laatst online: 08-09 16:22
Mijn domeinnaam [domein].nl is geregistreerd bij [provider] maar vanwege de extra features en de lage kosten van Google Apps, laat ik de mail afhandelen door Google (http://www.google.com/sup...wer.py?hl=nl&answer=33352).

Mails vanaf de server van [provider] komen allemaal aan, alleen de mails aan [domein].nl niet. Dit komt omdat DirectAdmin denkt dat de mail van [domein].nl intern wordt afgehandeld. Volgens mij heeft curry684 'm door :)

Ik ben helaas slechts reseller en kan de MX-records niet zelf aanpassen. Het verzoek is bij de provider neergelegd, dus ik hoop dat het opgelost wordt. (provider heb ik op de hoogte gesteld van dit topic ;))

Acties:
  • 0 Henk 'm!

  • curry684
  • Registratie: Juni 2000
  • Laatst online: 06-09 00:37

curry684

left part of the evil twins

Als reseller kan dit wel: even de user in kwestie selecteren, modify, en een vinkje zetten bij 'DNS Control'. Daarna kun je op user level de gewraakte setting aanpassen.

Ik ben het probleem overigens vaker bij onze eigen DA-klanten tegengekomen, meestal idd in combinatie met Google Apps.

[ Voor 26% gewijzigd door curry684 op 01-10-2008 01:09 ]

Professionele website nodig?


Acties:
  • 0 Henk 'm!

  • StephanVierkant
  • Registratie: Mei 2003
  • Laatst online: 08-09 16:22
Dankzij de provider is het vinkje weer terug, en het werkt :)
Pagina: 1