Micha: cgi-mailer mag nicht

Hallo...

sorry wenn ich mich etwas seltsam ausdrücke - bin Neuling...

Ich habe mir den CGI/Perl Form-Mailer von Stefan Münz auf meine Seite geholt.
Das Script habe ich umgeschrieben:

  • Pfad zum SMTP-Programm zum eMail-Versand in
      /usr/lib/postfix
  • Die Empfänger-eMail in
      micha@mimau.de

Das Script wird auf der Seite wie vorgeschlagen aufgerufen.

Wenn ich nun ein Formular versende, wird zwar die "Dankeseite" angezeigt - ich vermute also, das Script wird korrekt abgearbeitet - aber die eMail kommt leider nie an...

Unter mimau.de ist ein Catchall-Account eingerichtet.
Wenn ich den "" zwischen der eMail-Adresse entferne mosert mein Perl-Debugger... daran liegt es vermutlich nicht...

Was mache ich falsch?

  1. hallo,

    Ich habe mir den CGI/Perl Form-Mailer von Stefan Münz auf meine Seite geholt.

    Hm. Da kribbelts mich schon. Was ist denn "deine Seite"? Meinst du deinen Webspace bei (d)einem Provider? Oder meinst du deinen eigenen Rechner?

    Das Script habe ich umgeschrieben:

    ok, das ist dein gutes Recht - es ist sogar erwünscht, daß du vom Script eigentlich nur die "Idee" übernimmst und sonst eben dein Augenmerk auf deine vorhandene Software bzw. das vorhandene Betriebssystem legst.

    • Pfad zum SMTP-Programm zum eMail-Versand in
        /usr/lib/postfix

    halt mal - was für ein Betriebssystem fährst du? Bei einer lokalen Linux-Installation ist es inzwischen zwar häufig anzutreffen, daß nicht mehr sendmail, sondern tatsächlich postfix installiert ist. Bei den Providern, die ich kenne, ist dies aber keinesfalls so, die verwenden (nach meinem Kenntnisstand, der sehr lückenhaft sein dürfte) noch immer ausschließlich sendmail - und außerdem kann man beide nebeneinander laufen lassen.

    • Die Empfänger-eMail in
        micha@mimau.de

    ähm - bist du sicher, daß irgendeine Zeile aus http://de.selfhtml.org/perl/sprache/cgitypisch.htm#formmailer dieser Angabe einer "Empfänger-Mail" entspricht? Ich möchte im übrigen empfehlen, dieses Subkapitel nicht wörtlich zu nehmen, es hat auch einen Grund, weshalb es keinen Verweis zu einem funktionierenden Beispiel gibt. Bei der nächsten Revision von SELFHTML werde ich in diesem Kapitel aufpassen müssen und das angeführte Beispiel so umschreiben, daß man tatsächlich eine funktionierende Vorlage herauskopieren kann. Derzeit sind in dem Beispiel noch drei völlig undefinerte Variablen enthalten.

    Wenn ich nun ein Formular versende, wird zwar die "Dankeseite" angezeigt - ich vermute also, das Script wird korrekt abgearbeitet

    Deine Vermutung läßt sich nur nach einem gründlichen Blick in deine logs stützen oder widerlegen. Ich vermute eher, daß die "Dankeseite" angezeigt wird, weil deinem Script gar nichts anderes übrigbleibt, als in irgendeinen "else"-Zweig zu springen.

    aber die eMail kommt leider nie an...

    Das ist nicht dein Problem. Du solltest prüfen, ob sie überhaupt _abgeschickt_ wurde. Ob sie dann auch ankommt, ist nicht mehr deine Sache.

    Wenn ich den "" zwischen der eMail-Adresse entferne mosert mein Perl-Debugger... daran liegt es vermutlich nicht...

    Vermutlich vermuten alle Leser jetzt irgendetwas anderes. Wirkliche Hilfe kann man dir erst geben, wenn man dein Script und die Softwareausstattung des versendenden Hosrechners kennt.

    Was mache ich falsch?

    Voraussichtlich einiges - aber vor allem lieferst du nicht wirklich alle Informationen, die man braucht, um dir konkret sagen zu können, wo im Script oder in der Serverkonfiguration etwas fehlt oder falsch ist. Jede Antwort auf dein posting ist auf mehr oder weniger fundierte Mutmaßungen angewiesen.

    Grüße aus Berlin

    Christoph S.

    --
    Visitenkarte
    ss:| zu:) ls:& fo:) va:) sh:| rl:|
    1. Moin!

      • Pfad zum SMTP-Programm zum eMail-Versand in
          /usr/lib/postfix

      halt mal - was für ein Betriebssystem fährst du? Bei einer lokalen Linux-Installation ist es inzwischen zwar häufig anzutreffen, daß nicht mehr sendmail, sondern tatsächlich postfix installiert ist. Bei den Providern, die ich kenne, ist dies aber keinesfalls so, die verwenden (nach meinem Kenntnisstand, der sehr lückenhaft sein dürfte) noch immer ausschließlich sendmail - und außerdem kann man beide nebeneinander laufen lassen.

      Stimmt so nicht.

      Erstens: Pro Server kann es nur genau einen Mailserver geben, Parallelbetrieb ist unmöglich. Also entweder Sendmail, oder Postfix - aber nicht beides zusammen.

      Zweitens: Postfix bringt, damit es als Ersatz für Sendmail funktioniert, ein eigenes Sendmail-kompatibles Interface mit, dass auf den wunderschönen Namen "sendmail" hört. Das zum Versand von Mails ausführbare Programm heißt identisch, kennt die gleichen Kommandozeilenparameter - eigentlich muß man den Programmnamen absolut nicht ändern, egal ob Sendmail oder Postfix installiert ist.

      Und genau darin vermute ich das Problem, denn /usr/lib/postfix ist erstens ungewöhnlich als Pfad, und zweitens ist das Programm "postfix" nicht geeignet zum Versenden von Mail, sondern dient als übergreifendes Kontrollprogramm für den Superuser. Allein die Manpage sagt es schon direkt im ersten Absatz: "This  command  is  reserved  for the superuser. To submit mail, use the Postfix sendmail command."

      Und genau das sollte Micha tun.

      ähm - bist du sicher, daß irgendeine Zeile aus http://de.selfhtml.org/perl/sprache/cgitypisch.htm#formmailer dieser Angabe einer "Empfänger-Mail" entspricht?

      Äh, bist du sicher, dass Micha irgendetwas von DEINER verlinkten Seite genommen hat? Es gibt diesen Tipps&Tricks-Artikel von Stefan Münz im Aktuell-Bereich.

      Wenn ich nun ein Formular versende, wird zwar die "Dankeseite" angezeigt - ich vermute also, das Script wird korrekt abgearbeitet

      Deine Vermutung läßt sich nur nach einem gründlichen Blick in deine logs stützen oder widerlegen.

      Das wiederum ist korrekt: Wenn der Aufruf des falschen Mailversandprogramms tatsächlich in den Logs folgenlos bleiben sollte, würde mich das sehr überraschen.

      Wenn ich den "" zwischen der eMail-Adresse entferne mosert mein Perl-Debugger... daran liegt es vermutlich nicht...

      Vermutlich vermuten alle Leser jetzt irgendetwas anderes. Wirkliche Hilfe kann man dir erst geben, wenn man dein Script und die Softwareausstattung des versendenden Hosrechners kennt.

      Nein, das ist schon "normal". Das @-Zeichen hat gewöhnlich Sonderbedeutung und muß escaped werden.

      - Sven Rautenberg

      --
      My sssignature, my preciousssss!