T2000: feedback - probs bei der Umsetzung

Ich versuche das folgende Skript (Form-Mailer), welches ich mir hier heruntergeladen habe, einzubinden:

#!/usr/bin/perl

# -------> SMTP-Programm zum Versenden der Mail:
  $Sendmail_Prog = "/usr/lib/sendmail";

# -------> Modul für CGI-Scripts einbinden:
  use CGI;

# -------> Modul für CGI-Scripts zum Einlesen der Formulardaten anwenden:
  $query = new CGI;
  @names = $query->param;

# -------> interne Daten aus den erwarteten hidden-Feldern auslesen:
  $delimiter = $query->param('delimiter');  # ---> Begrenzerzeichen zwischen name und value
  $mailto = $query->param('mailto');        # ---> Empfängeradresse
  $returnhtml = $query->param('return');    # ---> URL für Dankeseite
  $subject = $query->param('subject');      # ---> E-Mail-Subject

# -------> Text der E-Mail aus den Formulardaten ermitteln:
  $mailtext = "";
  foreach(@names) {
    $name = $_;
    @values = "";
    @values = $query->param($name);
    if($name ne "mailto" && $name ne "return" && $name ne "subject" && $name ne "delimiter") {
      foreach $value (@values) {
        $mailtext = $mailtext.$name;
        $mailtext = $mailtext.$delimiter;
        $mailtext = $mailtext.$value."\n";
      }
    }
  }

# -------> E-Mail versenden:
  open(MAIL,"$Sendmail_Prog -t") print "Mailprogramm konnte nicht gestartet werden\n";
  print MAIL "To: $mailto\n";
  print MAIL "Subject: $subject\n\n";
  print MAIL "$mailtext\n";
  close(MAIL);

# -------> Dankeseite an Browser senden:
  print "Location: $returnhtml\n\n";

Nachdem ich es beim Provider im cgi-bin-Verzeichnis upgeloadet und aktiviert habe (chmod 755), erschien beim Testen folgende Fehlermeldung.

Internal Server Error

The server encountered an internal error or misconfiguration and was unable to complete your request.

Diese Meldung erhielt ich auch beim lokalen Test unter Sambar-Server.
Muß ich das Skript noch anpassen oder gibt es hier oder vielleicht im Html-Dokument ein Fehler.

  1. Hi,

    Nachdem ich es beim Provider im cgi-bin-Verzeichnis upgeloadet und aktiviert habe (chmod 755), erschien beim Testen folgende Fehlermeldung.

    Internal Server Error

    was sagt das Error-Log des Servers?

    Cheatah

  2. Internal Server Error

    The server encountered an internal error or misconfiguration and was unable to complete your request.

    use CGI::Carp 'fatalsToBrowser';

    Peter

  3. Hallo!

    Erstmal modifiziere die Zeile

    # -------> E-Mail versenden:
      open(MAIL,"$Sendmail_Prog -t") print "Mailprogramm konnte nicht gestartet werden\n";

    so, dass da
         open(MAIL,"$Sendmail_Prog -t") die("Mailprogramm konnte nicht gestartet werden");
    steht.

    Und dann lies http://www.teamone.de/selfaktuell/artikel/schroepl03.htm und such den Fehler. (Und falls in Deinem ErrorLog eben jene Message dort oben steht ("Mailprogramm konnte nicht gestartet werden"), dann frag Deinen Provider nach dem Pfad zu sendmail und trag ihn in der Zeile $Sendmail_Prog = "/usr/lib/sendmail" richtig ein.)

    So long