Perl auf meinem Rechner anpassen

Hallo,

ich habe auf meinem Rechner Apache und Perl installiert. Leider bekomme ich es nicht hin, daß die erste Zeile nicht auf #!/usr/bin/perl verweist, sonder bei mir auf #!d:/perl/bin/perl -w zeigen muß. Um ein Skript offline zu testen, muß ich somit alle Dateien ändern und beim Aufspielen auf einen externen Server wieder alles rückgängig machen.
Wer kann mir bei meinem Problem helfen?

Grüße
Sven

ich habe auf meinem Rechner Apache und Perl installiert.
Leider bekomme ich es nicht hin, daß die erste Zeile nicht auf
#!/usr/bin/perl verweist, sonder bei mir auf
#!d:/perl/bin/perl -w zeigen muß. Um ein Skript offline zu

Gib bei der Installation von Perl (ich nehme an Du benutzt Windows und ActiveState Perl) als Installationspfad d:/usr an
und dann kannst Du die She-Bang Zeile belassen (#!/usr/bin/perl)
Voraussetzung ist, dass Perl und Apache auf des selben Platte liegen.

Klaus

Oder stell im Apache ein (weiss jetzt grad nicht wie genau), dass .pl Dateien mit perl.exe ausgeführt werden und nicht über CGI in der ersten Zeile nachschaut mit welchem Interpreter

Das ganze läuft leider immer noch nicht im I-Explorer. Nachdem ich die .pl Endung mit perl.exe über den Explorer verbunden habe, läuft mein „Hallo Welt“ Skript unter der Doseingabe

Sven

Das ganze läuft leider immer noch nicht im I-Explorer. Nachdem
ich die .pl Endung mit perl.exe über den Explorer verbunden
habe, läuft mein „Hallo Welt“ Skript unter der Doseingabe

Webserver (Apache oder MS IIS) richtig für die Ausführung von CGI-Scripts konfiguriert?

Webserver (Apache oder MS IIS) richtig für die Ausführung von
CGI-Scripts konfiguriert?

Apache liegt unter D:/Apache/Apache.exe
Perl liegt auf d:/usr/bin/perl.exe
mit ActivePerl-5.6.0.623-MSWin32-x86-multi-thread.msi installiert.

Ausschnitt aus meiner httpd.conf
63: ServerRoot „d:/Apache“
267: DocumentRoot „h:/Webs“
282: # Note that from this point forward you must specifically allow

particular features to be enabled - so if something’s not working as

you might expect, make sure that you have specifically enabled it

below.

This should be changed to whatever you set DocumentRoot to.

525: # To enable the this Windows specific behavior (and therefore -disable- the

equivilant Unix behavior), uncomment the following directive:

ScriptInterpreterSource registry
556: # ScriptAlias: This controls which directories contain server scripts.

ScriptAliases are essentially the same as Aliases, except that

documents in the realname directory are treated as applications and

run by the server when requested rather than as documents sent to the client.

The same rules about trailing „/“ apply to ScriptAlias directives as to

Alias.

ScriptAlias /cgi-bin/ „d:/Apache/cgi-bin/“
ScriptAlias /perl/ „d:/usr/bin/“

„d:/Apache/cgi-bin“ should be changed to whatever your ScriptAliased

CGI directory exists, if you have that configured.

AllowOverride None
Options All
Order allow,deny
Allow from all

778: # If you want to use server side includes, or CGI outside

ScriptAliased directories, uncomment the following lines.

To use CGI scripts:

AddHandler cgi-script .cgi
811: # Action lets you define media types that will execute a script whenever

a matching file is called. This eliminates the need for repeated URL

pathnames for oft-used CGI file processors.

Format: Action media/type /cgi-script/location

Format: Action handler-name /cgi-script/location

Action application/x-httpd-perl „/perl/perl.exe“

ich starte test.pl (Hallo Welt) im IE unter localhost/test.pl Hinweis: Forbidden, no permision
localhost/cgi-bin/test.pl Internal Server Error

Kann mir jemand unter Zuhilfenahme dieser Daten helfen?

Sven

Apache liegt unter D:/Apache/Apache.exe
Perl liegt auf d:/usr/bin/perl.exe
mit ActivePerl-5.6.0.623-MSWin32-x86-multi-thread.msi
installiert.

[…]

ich starte test.pl (Hallo Welt) im IE unter localhost/test.pl
Hinweis: Forbidden, no permision

localhost/cgi-bin/test.pl Internal Server Error

zumindest fehlt ein
AddHandler cgi-script .pl

folgende Zeile weg
ScriptAlias /perl/ „d:/usr/bin/“

und was ist mit
Options ExecCGI Includes

Action application/x-httpd-perl „/perl/perl.exe“ ???
ich denke Perl liegt bei Dir jetzt unter d:/usr/bin/perl.exe

Schau auch mal in das Error.log des Apache, da steht oft detaillierteres zur o.g. Fehlermeldung drin

Klaus

hallo

als erstes mußt du mal localhost/cgi-bin/test.pl eingeben
ansonsten, weiß der apache nicht daß er hier ein perl-script
ausführen muß. es muß aus dem cgi-bin-verzeichnis gestartet
werden. test.pl müßte sich dann aber auch in d:\apache\cgi-bin\
befinden (laut deiner config). mit der ersten zeile (#! …)
dürfte es eigentlich keine probleme geben, da du eingestellt
hast, daß der apache die windows registry benutzen soll.

gruß…
…puhli

So, jetzt läuft es.
Leider muß ich in der She-Bang Zeile noch D:/… eingeben, was man aber wohl nicht ändern kann.

Besten Dank an alle
Sven