Heiko: Skript läuft nicht - internal server error

Beitrag lesen

einige potentielle Fehlerquellen hast Du ja ausgeschlossen lt. Deinem Bericht weitere evtl. Fehler kannst Du hier finden: http://cgi.faq-zentrale.de.

oder hier: http://www.teamone.de/selfaktuell/schroepl03.htm.
Gefühlsmäßig würde ich ja auf den angeblich korrekten Perl-Pfad tippen ...

Pfad war ok, ich hatte einfach die Zeile

print "Content-type: text/html\n\n";

vergessen, damit habe ich mich wohl als newbie geoutet, sorry.

Was mir noch aufgefallen ist: die Änderung der Zugriffsrechte ( chmod 755 mittels WS-FTP) wird zwar positiv bestätigt, wenn ich dann die Datei überprüfe, wird nur 753 angezeigt. Könnte es damit zu tun haben? Mit dem cgi-local Verzeichnis dasselbe: ich ändere in 755, wirksam wird aber nur 753. Trotzdem läuft aber das Perlcheck-Skript. Es ist zum Mäusekriegen...

Zunächst mal: Wenn Du in der Lage bist, selbst chmod-Kommandos auszuführen, dann hast Du vermutlich einen Zugang zum System, mit dem Du alles machen kannst, wofür Dir telnet empfohlen wurde.

Aber dann: 753 ist verdächtig wenig. (Und außerdem Unfug: Das erlaubt allen Leuten, die Datei zu schreiben, nicht aber sie zu lesen!)
Wenn der Webserver wie üblich so ein "other"-Benutzer ist, dann kann er in der Tat Dein Skript nicht lesen. Das aber müßte er, weil der Perl-Interpreter es ja interpretieren muß. (Bei einem binary wäre chmod 111 genug zum Ausführen.)

Daß Deine chmod-Kommandos verändert werden, wundert mich. Es gibt zwar umask-Einstellungen für Benutzerkennungen, aber nach meiner Erfahrung wirken die bloß dann, wenn Du unzureichende Angaben machst (beispielsweise gar keine, als einfach eine Datei zum Schreiben öffnest oder so).

Auch hier mein (Wissens-)Fehler: ich habe mich auf die check-Boxen von WS_FTP verlassen, die zeigen aber gar nicht die aktuellen Zugriffsrechte an...

Was passiert denn, wenn Du (unter telnet ... ;-) das Kommando "umask" ausführst?

Immerhin habe ich jetzt auch gelernt, mit telnet umzugehen :-)

Allgemein: Die besten Informationen über Dein Problem stehen nun mal in der errorlog-Datei des Webservers. Kommst Du da irgendwie ran?

War gottseidank nicht mehr nötig, dafür stehe ich jetzt vor folgendem Problem: sobald ich in ein Formular-Skript die Variable

$Empfaenger= "hlinn@ctcinternet.cl";

einfüge, taucht wieder der bekannte 500-Fehler auf. Es liegt an dem @-Zeichen, wie ich schon gemerkt habe (wenn ich das Zeichen herausnehme, läuft‚s). Gibt es eine andere Möglichkeit?

Danke

Heiko