Hi,
Ich habe RedHat 7.1 installiert mit Apache und
mod_perl.
mod_perl - aha. Interessant.
Wenn ich jedoch ein Perl-Script aufrufe, bekomme
ich dauernd einen internen Serverfehler.
... welcher besagt, daß Dein Skript nicht tut, was es tun soll.
Hab zum testen nun einmal ein Formmailer-Skript
von Matt's Archiv genommen
Eieiei. Keine gute Idee bei mod_perl.
Im Log steht leider auch nicht mehr drinnen, als
interner Serverfehler.
Hast Du ein separates "ScriptLog" eingeschaltet?
Was hab ich vergessen zu beachten?
Mit mod_perl mußt Du viel sauberer programmieren, als wenn Du normale Perl-Skripte über die CGI-Schnittstelle laufen läßt.
Sind alle Variablen deklariert und initialisiert?
Ist Dein Skript mit "perl -w" und "use strict;" ohne Warnungen lauffähig?
Es ist einfach ein Unterschied, ob ein Skript vom normalen Perl-Interpreter immer wieder neu geladen wird, oder ob es über mod_perl resident im Speicher liegt und ggf. noch irgendwelche Daten vorheriger Ausführungen dort herum stehen.
Das alles darf Deinem Skript nichts ausmachen - es muß sich eben darum kümmern, seine Datenstrukturen ordentlich aufzubauen.
mod_perl verzeiht keinerlei Schlamperei.
Vielleicht hilft es ja auch, wenn ich einfach
einmal die httpd.conf mit reinschreibe:
Wenn eines Deiner Skripte mit mod_perl korrekt läuft und andere nicht, dann liegt es ziemlich sicher an den anderen Skripten.
Viele Grüße
Michael
(der es übrigens abenteuerlich findet, daß Du den Apache für Deine Skript-Fehler verantwortlich machst - was machen denn die vielen Betreiber der aktuell 10,4 Millionen aktiven Apache-Sites anders als Du?)