Apache und Perl
Mark
- cgi
Hallo,
ich habe Apache 2, bzw. FoxServ WAMP unter XP installiert und soweit läuft auch alles incl. PHP und MySQL. Aber mit Perl hab ich Schwierigkeiten:
Wenn Ich im Browser die .pl Datei aufrufe, wird der Quelltext angezeigt... Im Error.log von Apache ist kein Fehler eingetragen.
Meine httpd.conf:
ScriptAlias /cgi-bin/ "C:/Programme/FoxServ/www/test/cgi-bin/"
<Directory "C:/Programme/FoxServ/www/test/cgi-bin">
AllowOverride None
Options None
Order allow,deny
Allow from all
</Directory>
Was mache ich falsch ? Ist es im übrigen richtig, das in den Apache Config Dateien, statt Windows-üblich ein Slash statt eines Back-slashes benutzt werden muss ? Was ist im Perl-Script ? Slash oder Backslash in der Shebang Zeile?
Moin!
Hallo,
ich habe Apache 2, bzw. FoxServ WAMP unter XP installiert und soweit läuft auch alles incl. PHP und MySQL. Aber mit Perl hab ich Schwierigkeiten:
Wenn Ich im Browser die .pl Datei aufrufe, wird der Quelltext angezeigt... Im Error.log von Apache ist kein Fehler eingetragen.
Dies sollte Deine Fragen beantworten:
ScriptInterpreterSource registry
#!c:/program files/perl/perl
AddHandler cgi-script .cgi # Der Indianer muss wissen, daß dies Skripte/CGI sind.
AddHandler cgi-script .pl
<Directory "C:/Programme/FoxServ/www/test/cgi-bin">
AllowOverride None
Options ExecCGI # <- Das musst Du ändern. Gib das auch für die Wurzel an, wenn Du überall
# Perl- Skripte ausführen willst. Sonst gehts nur in diesem Verzeichnis.
Order allow,deny
Allow from all
</Directory>
MFFG (Mit freundlich- friedfertigem Grinsen)
fastix®
Danke Dir haut soweit hin, ausser das die Datei .pl und nicht .cgi heissen darf (Trotz AddHandler Eintrag). Aber das ist nicht so schlimm, wenn es auch schön wäre. Kannst Du mir auch noch sagen, wie ich das LWP bzw. konkret LWP::Simple Modul installieren kann, bzw, wo ich das herbekomme ?
Hat sich erledigt... Habs schon. Aber vielleicht weisst Du ja noch, warum keine .cgi dateien ausgeführt werden ? Bei Doppelklich wird die .cgi datei mit dem Interpreter geöffnet...
Moin!
Hat sich erledigt... Habs schon. Aber vielleicht weisst Du ja noch, warum keine .cgi dateien ausgeführt werden ? Bei Doppelklich wird die .cgi datei mit dem Interpreter geöffnet...
Keine Ahnung :)
Was hast Du alles konfiguriert?
Wann hast Du den Apache neu gestartet?
MFFG (Mit freundlich- friedfertigem Grinsen)
fastix®
Wieder ein Stück weiter: die .cgi lässt sich nur dann ausführen, wenn ich im shebang den absoluten windows pfad angebe. ich verstehe zwar nicht warum das nur bei .cgi der Fall ist, aber andere vielleicht schon...
Moin!
Wieder ein Stück weiter: die .cgi lässt sich nur dann ausführen, wenn ich im shebang den absoluten windows pfad angebe. ich verstehe zwar nicht warum das nur bei .cgi der Fall ist, aber andere vielleicht schon...
Vergleiche mal in der Registry die Einträge dafür, wie .pl und .cgi vom System behandelt werden.
(steht in HKEY_CLASSES_ROOT)
Dann sollte es gehen.
MFFG (Mit freundlich- friedfertigem Grinsen)
fastix®
Sauber !
Jetzt geht alles wie gewünscht.
Die .cgi hatte in der Registry den PersistentHandler Eintrag.
Vielen Dank !
Hallo,
Meine httpd.conf:
es gibt verschiedene Wege zum Ziel, hier ist der von mir bevorzugte
ServerName www.xwolf.de
NameVirtualHost 127.0.0.1
<VirtualHost 127.0.0.1>
DocumentRoot d:/home/xwolf/htdocs
ScriptAlias /cgi-bin/ d:/home/xwolf/cgi-bin/
</VirtualHost>
--> slash ist OK
shebang:
#!perl
tut sofern perl.exe im OS PATH steht.
ansonsten
#!/usr/bin/perl
geht mit PERL 6 and hi_
sofern auf demselben Laufwerk wo Apache, ein Verzeichnis /usr/bin existiert mit einer Kopie der perl.exe drin.
Erwin