Klaus: Mail versenden mit mail() funktioniert nicht?

Hallo,

bisher habe ich immer Apache & Co. unter Windows aufgesetzt, jetzt möchte ich auf Linux (Ubuntu) umsteigen.
Installiert ist alles soweit, das meiste funktioniert auch, nur der Mailversand noch nicht.

Folgendes habe ich konfiguriert bzw. getestet:

  • sendmail installiert (sudo apt-get install sendmail)
  • in der php.ini
       SMTP = 10.1.20.1
       smtp_port = 25
       sendmail_from = webmaster@meinedomain.de
       sendmail_path = "/usr/sbin/sendmail -t -i"
  • Im Mailserver den Webserver aus der Anti-Relay-Prüfung herausgenommen
  • telnet mailserver 25 getestet -> funktioniert

Frage: Muss ich sendmail noch beibringen, dass Mails über den Mailserver versendet werden und nicht selbst? (Wenn ja, wie?)
Oder fehlt noch woanders was?

Klaus

  1. Hello,

    Frage: Muss ich sendmail noch beibringen, dass Mails über den Mailserver versendet werden und nicht selbst? (Wenn ja, wie?)
    Oder fehlt noch woanders was?

    Webserver auch neu gestartet?

    Liebe Grüße aus dem schönen Oberharz

    Tom vom Berg

    --
     ☻_
    /▌
    / \ Nur selber lernen macht schlau
    http://bergpost.annerschbarrich.de
    1. Hi

      Webserver auch neu gestartet?

      Ja, den Webserver habe ich neugestartet, auch sendmail schon mehrfach (nach Konfigurationsänderungen)

      Bei Google habe ich nach sendmail forwarding to relay server gesucht und bin auf zwei Einträge gestoßen, die in sendmail noch hinzugefügt werden sollten.

      Aber auch hier noch immer keine Besserung.

      Wenn ich den folgenden Befehl abschicke:
      /usr/sbin/sendmail -bv klaus@web.de
      dann wird angezeigt:
      klaus@web.de... deliverable: mailer relay, host 192.168.1.7, user klaus@web.de

      Das klingt doch eigentlich schonmal ganz gut, ...

  2. Tach!

    • sendmail installiert (sudo apt-get install sendmail)

    Sendmail weiß auch, wie es Post versenden muss? Hast du das mal lokal probiert?

    • in der php.ini
         SMTP = 10.1.20.1
         smtp_port = 25

    Bitte PHP-Handbuch lesen. Diese beiden Werte werden nur unter Windows verwendet. Sie ergeben im Zusammenhang mit dem unter Linux verwendeten sendmail (oder einem leichter zu konfigurierenden Pendant) keinen Sinn.

    Frage: Muss ich sendmail noch beibringen, dass Mails über den Mailserver versendet werden und nicht selbst? (Wenn ja, wie?)

    Ja. Aber nimm lieber ein einfacheres Mail-Programm. Wichtig ist, dass es sendmail-kompatibel ist. Anleitungen zu MTAs unter linux sollten zu Hauf zu finden sein. Konfiguriere es passend und teste es erst mit einem lokalem Mail-Client (oder telnet auf localhost:25).

    dedlfix.

  3. hi,

    meiner Erfahrung nach, ist mail() nicht mehr das gelbe vom ei.
    Hier auf eine neue Funktion zu setzen die direkt über einen Account versendet ist deutlich besser. Grade in Verbindung mit dem Spamschutz hatte ich so meine bösen erfahrungen. Bei Strato konnte ich in den letzten Monaten auch vermehrt feststellen, dass man bei mail() einen 503er Fehler bekommen hat.

    Im gleichen Zeitraum haben zugriffe auf den mail-server direkt, aber funktioniert.

    Das aber nur so btw.

    Gruß Niklas

    --
    Man muss nicht alles wissen, man sollte aber wissen, wo das nicht gewusste zu finden ist.
    1. Tach!

      meiner Erfahrung nach, ist mail() nicht mehr das gelbe vom ei.
      Hier auf eine neue Funktion zu setzen die direkt über einen Account versendet ist deutlich besser.

      mail() sendet nicht direkt. Unter Windows wurd ein SMTP-Server beauftragt, unter Linux sendmail oder etwas kompatibles. In beiden Fällen spielen also von PHP nicht beeinflussbare Konfigurationen anderer Systeme eine Rolle.

      Grade in Verbindung mit dem Spamschutz hatte ich so meine bösen erfahrungen. Bei Strato konnte ich in den letzten Monaten auch vermehrt feststellen, dass man bei mail() einen 503er Fehler bekommen hat.

      Dann liefert sendmail (oder der Ersatz) die Mails wohl nicht so aus, wie es Strato gern hätte. Lässt sich sicher auch durch Konfigurationsanpassung verändern.

      dedlfix.

      1. hi,

        meiner Erfahrung nach, ist mail() nicht mehr das gelbe vom ei.
        Hier auf eine neue Funktion zu setzen die direkt über einen Account versendet ist deutlich besser.

        mail() sendet nicht direkt. Unter Windows wurd ein SMTP-Server beauftragt, unter Linux sendmail oder etwas kompatibles. In beiden Fällen spielen also von PHP nicht beeinflussbare Konfigurationen anderer Systeme eine Rolle.

        Grade in Verbindung mit dem Spamschutz hatte ich so meine bösen erfahrungen. Bei Strato konnte ich in den letzten Monaten auch vermehrt feststellen, dass man bei mail() einen 503er Fehler bekommen hat.

        Dann liefert sendmail (oder der Ersatz) die Mails wohl nicht so aus, wie es Strato gern hätte. Lässt sich sicher auch durch Konfigurationsanpassung verändern.

        Ja, das kann ja bei Klaus eben auch passiert sein, dass das Empfängerkonto bzw. der Mailserver dahinter ihn einfach abgewiesen hat.

        Ich würde wohl wieder mal Zend Framework bzw. die Mailklasse empfehlen, inklusive SMTP-Authentifizierung: http://framework.zend.com/manual/de/zend.mail.smtp-authentication.html. Bei PEAR gibts bestimmt auch noch was taugliches ...; [ich wüsste gern mal, ob "taugliches" hier groß geschrieben werden müsste ...?]

        mfg

        tami

  4. hi,

    Hallo,

    bisher habe ich immer Apache & Co. unter Windows aufgesetzt, jetzt möchte ich auf Linux (Ubuntu) umsteigen.
    Installiert ist alles soweit, das meiste funktioniert auch, nur der Mailversand noch nicht.

    Woher weißt du denn, dass der Mailversand nicht funktioniert? Vielleicht akzeptieren andere Mailserver einfach keine Mails von Deinem privaten Server?

    mfg

    tami