Verweise in CGI-Skript
Chris
- perl
Hallo,
ich baue mir im Augenblick eine Homepage und habe von einem Bekannten ein CGI-Gästebuch erhalten. Dies funktioniert bei ihm auch einwandfrei.
Ich erhalte jedoch immer den Fehlercode 500. Mein Provider bietet einen Perl-Debugger an (keine Ahnung, ob dies nützlich ist), dieser meldet bei dem Eintrag jedoch einen Fehler.
Habe ich bei den Verweisen zu den Dateien ausversehen einen Fehler eingebaut?
Zum besseren Verständis poste ich am Ende des Eintrags den Anfang des Skripts.
Eigene CGI-Skripte darf ich verwenden und das skript befindet sich in html/cgi-bin.
Ich hoffe Ihr könnt mir helfen!
Danke!
Gruß
Hier der Skriptanfang:
#!/usr/bin/perl
$guestbookurl = "../gaesteb/gaestebuchmain.htm";
$guestbookreal = "../gaesteb/gaestebuchmain.htm";
$cgiurl = "/cgi-bin/buch.pl";
$date_command = "/usr/bin/ddate";
$mail = 1; # 1 = Yes; 0 = No
$uselog = 0; # 1 = Yes; 0 = No
$linkmail = 1; # 1 = Yes; 0 = No
$separator = 1; # 1 = <hr>; 0 = <p>
$redirection = 1; # 1 = Yes; 0 = No
$entry_order = 1; # 1 = Newest entries added first;
# 0 = Newest Entries added last.
$remote_mail = 1; # 1 = Yes; 0 = No
$allow_html = 1; # 1 = Yes; 0 = No
$line_breaks = 0; # 1 = Yes; 0 = No
$mailprog = '/usr/sbin/sendmail';
Hallo Chris,
ich baue mir im Augenblick eine Homepage und habe von einem Bekannten ein CGI-Gästebuch erhalten. Dies funktioniert bei ihm auch einwandfrei. Ich erhalte jedoch immer den Fehlercode 500.
Sind die Dateirechte auf 755 gesetzt, sodass das Script ausführbar ist?
Hier der Skriptanfang:
#!/usr/bin/perl
Besser wäre für die Testphase:
#!/usr/bin/perl -w
use warnings;
use CGI::Carp qw(fatalsToBrowser);
Ergänze diese Zeilen und schau, was du beim Ausführen des Scriptes bekommst. Auch ein Blick in deine error.log sollte dir weiter helfen.
Vielleicht hilft's
Siechfred
Hi,
Ich erhalte jedoch immer den Fehlercode 500.
stopp. Hör auf zu atmen. Beende Deinen Herzschlag. Diese Dinge brauchst Du erst wieder, nachdem Du im Error-Log des Servers nachgesehen hast. Bei *jedem* Internal Server Error.
#!/usr/bin/perl
#!/usr/bin/perl -w
use strict;
$guestbookurl = "../gaesteb/gaestebuchmain.htm";
perldoc -f my
$guestbookreal = "../gaesteb/gaestebuchmain.htm";
Falls dies kein URL- sondern ein Dateipfad sein soll: Im CGI-Kontext ist der Begriff "aktuelles Verzeichnis" undefiniert. Jedwede relative Angabe ist also falsch.
$mailprog = '/usr/sbin/sendmail';
perldoc Net::SMTP
oder
perldoc MIME::Lite
o.ä.
Cheatah