Tommi: Sendmail und Schlund-Server

Hallo Forum,

ich habe ein Script von Gossamer Threads, das auf 2 anderen Servern bereits bestens gelaufen ist, nur auf dem Schlund-Server bekomme ich in der "Dead.letter" folgende Fehlermeldung (und natürlich wird keine Email gesendet):

-----------------------------------------------------
2001/05/26-19:44:01 ssmtp: Could not send message,
perhaps missing or malformed recipient(s)
-----------------------------------------------------

Warum läuft das auf den anderen Servern, auf diesem aber nicht?

$Pfad = "|usr/sbin/sendmail -t";

open (MAIL, "$mailprog") || &cgierr("Can't start mail program");
        print MAIL "To: $in{'email'}\n";
        print MAIL "From: $admin_email\n";
        print MAIL "Subject: $html_title Account Created\n\n";
        print MAIL "-" x 75 . "\n\n";
        print MAIL "Your account at $html_title has been created.\n\n
    close (MAIL);

Grüße an alle

Tommi

P.S: Ein eventuell fehlender Backslash vor dem @ würden die anderen Server doch auch bemängeln (wenn er denn fehlen würde, oder?)

  1. Hi,
    Perl Skripte und die Schlund server sind sowieso nen ganz spezieller Fall, meine Skripte haben z.B. lokal mit dem Sambar Server funktioniert und online nicht, da, wie es sich nach langen mail Wechseln mit dem Schlund Support, der Server den content-type unbedingt am Anfang des Skriptes haben und nicht später.

    Probier einfach das mit dem Backslash, irgendwie sind die Server sehr penibel in solchen Fragen.

    1. Hallo,

      Perl Skripte und die Schlund server sind

      sowieso nen ganz spezieller Fall, meine Skripte
      haben z.B. lokal mit dem Sambar Server funktioniert
      und online nicht, da, wie es sich nach langen mail
      Wechseln mit dem Schlund Support,
      der Server den content-type unbedingt
      am Anfang des Skriptes haben und nicht später.

      Das stimmt NICHT!!!
      Du mußt das
      print "Content-...\n\n";
      natürlich vor dem ersten Ausgabebefehl haben!
      D.h. aber nicht, daß es DIREKT am Anfang vom Script stehen muß.

      Reiner

  2. Hi,

    Warum läuft das auf den anderen Servern, auf diesem aber nicht?

    $Pfad = "|usr/sbin/sendmail -t";

    open (MAIL, "$mailprog") || &cgierr("Can't start mail

    Wie jetzt, du legst den Pfad zu sendmail auf $Pfad und machst eine Pipe auf zu $mailprog ???

    Das kann nicht gehen!

    Gruss aus Linkenheim (Baden); Rolf

    1. Hi,

      Warum läuft das auf den anderen Servern, auf diesem aber nicht?

      $Pfad = "|usr/sbin/sendmail -t";

      open (MAIL, "$mailprog") || &cgierr("Can't start mail

      Wie jetzt, du legst den Pfad zu sendmail auf $Pfad und machst eine Pipe auf zu $mailprog ???

      Das kann nicht gehen!

      Gruss aus Linkenheim (Baden); Rolf

      Hi Rolf,

      im Skript stimmt das, ich hab den Fehler nur hier im Forum eingebaut.

      Tommi

  3. Hallo,

    $Pfad = "|usr/sbin/sendmail -t";

    open (MAIL, "$mailprog") || &cgierr("Can't start mail program");
            print MAIL "To: $in{'email'}\n";
            print MAIL "From: $admin_email\n";
            print MAIL "Subject: $html_title Account Created\n\n";
            print MAIL "-" x 75 . "\n\n";
            print MAIL "Your account at $html_title has been created.\n\n

    ist das fehlende '";' ein Kopierfehler oder fehlt das auch in Deinem Script?

    close (MAIL);

    P.S: Ein eventuell fehlender Backslash vor dem @ würden die anderen Server doch auch bemängeln (wenn er denn fehlen würde, oder?)

    Ob ein '@' fehlt oder nicht, kannst Du doch so nicht entscheiden. Ich würde mal den ganzen Mailtext (inclusive Header) auch in eine Datei schreiben oder zum Browser senden, um zu sehen, was da wirklich dem Mailprogramm übergeben wird.
    Denn was steht denn nun wirklich in '$in{'email'}', '$admin_email' und '$html_title' drin.
    Da sind von der Ferne zu wenig Informationen dazu vorhanden, um wirklich was sagen zu können.

    Grüße
      Klaus