1. Diese Seite verwendet Cookies. Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies. Weitere Informationen

Mittels der PHP-Funktion mail() versendete E-Mails kommen nicht an

Dieses Thema im Forum "Web-Programmierung" wurde erstellt von Lars, 30.08.06.

  1. Lars

    Lars Gast

    Hallo Forum,

    ich stehe seit längerer Zeit vor einem merkwürdigen Phänomen, dessen Ursache ich irgendwo in den Tiefen des Mac OS respektive dessen Unix-Schicht vermute, mir aber absolut nicht zu helfen weiss:

    Mittels der PHP-eigenen Funktion mail() von meinem lokalen Webserver (OS 10.4.7, PHP 4.3.1) versendete E-Mails kommen nicht an. Das Problem besteht selbst bei einer minimalen Implementation wie der nachfolgenden.

    Code:
    mail("foo@bar.de","test","test","From: bar@foo.de\r\n");
    An meinen Programmier-Fertigkeiten liegt es (ausnahmsweise mal) nicht, auf jedem anderen Server funktionieren die betroffenen Skripte ohne jedwelche Probleme -- die versendeten E-Mails erreichen ihren Empfänger wie gewünscht.

    Anhand der entsprechenden Meldung von Little Snitch lässt sich des Weiteren ablesen, dass SMTP nach dem Aufruf der Funktion Verbindung zum korrekten Server (ergo dem Posteingang des Empfängers) konnektiert, ein direkter Aufruf der Postfix-Warteschlange zeigt die entsprechende Nachricht ebenfalls wie nachstehend an (dort verbleibt selbige aber nicht lange, scheint also auf die Reise zu gehen).

    Code:
    -Queue ID- --Size-- ----Arrival Time---- -Sender/Recipient-------
    B9A44212CBB*     288 Wed Aug 30 08:18:32  nobody@PowerBook.local
                                             foo@bar.de
    
    -- 0 Kbytes in 1 Request.
    
    Hätte jemand eine Idee? :(
     
  2. Sir Q

    Sir Q Rheinischer Winterrambour

    Dabei seit:
    12.04.05
    Beiträge:
    921
    Dein lokaler Webserver hängt an deinem lokalen Internetanschluss und hat somit eine dynamische IP und die meisten guten Provider lassen mails von dynamischen IPs nicht rein, da sie in 99% der Välle von privatrechnern stammen - und das teilt sich wiederum auf in:
    • 90% Viren/Würmer/Trojaner die aus dem PC ein SPAM-Bot gemacht haben
    • 9,9999 % falsch configurierte Mail-Clients die die mails mittels lokalem SMTP versenden und nicht über die angegeben Kontodaten
    • 0,00001 % beabsichtigte versuche mittels lokalem SMTP zu senden

    Kein Admin lässt dieses Scheunentor auf - kein Admin lässt dieses Scheunentor auf. Ich würde die Idee mit dem lokalen Webserver und mails-versenden sein lassen - ODER dein PHP nutzt die POP-Methoden um ein Postfach auf einem Mail-Server mit fester IP im Internet zu benutzen und die Mails dann darüber zu versenden - so wie alle anderen Mail-Clients es auch machen (sollten) …
     
  3. Lars

    Lars Gast

    Danke für die Hinweise und die Statistik :D, ähnliche Vermutungen hatte ich auch schon angestellt. Leider bin ich zu Testzwecken aber auf diese Funktionalität angewiesen -- einen Wrapper zur direkten Interaktion mit dem SMTP-Server wollte ich mir dabei gerne ersparen ...

    Hätte noch jemand einen klitzekleinen Lösungsansatz parat? :)
     
  4. seb2

    seb2 Gast

    Und wenn Du sie Dir an Deinen lokalen Nutzer senden läßt? Also schätzungsweise sowas wie "lars@localhost"?
    Dann kannst Du sie immer noch mit "mail" in der Shell lesen...
     
    1 Person gefällt das.
  5. Lars

    Lars Gast

    Jaaa!

    Die Idee ist ja einfach wie genial, das Ganze funktioniert prächtig! Danke! :)
     

Diese Seite empfehlen