Schrift
Wiki:Tipp zum Debugging: use Data::Dumper; local $Data::Dumper::Useqq = 1; print Dumper \@var;
[thread]3119[/thread]

Sorry - aber keine Anleitung passt: Apache2 + Perl: Apache2.0.46 + ActivePerl5.8.4.810 (Seite 2)

Leser: 1


<< |< 1 2 >| >> 19 Einträge, 2 Seiten
GetIT
 2004-07-03 13:55
#30808 #30808
User since
2003-11-02
24 Artikel
BenutzerIn
[default_avatar]
Geht aber leider net!

Ich beschreib nochmal genau was ich gemacht hab:

1. Ich öffne den Browser
2. Ich geben in die Adresszeile die URL: localhost ein
3. Ich sehe im Browser mein DocumentRoot: 1Ordner ("Perl"), keine Dateien
4. Ich klicke auf "Perl" --> Forbidden
Das sagt die Error.log:
Quote
[Sat Jul 03 11:50:07 2004] [error] [client 127.0.0.1] attempt to invoke directory as script: C:/Programme/WAMPP/Testordner/Perl/, referer: http://localhost/


Mache ich das so:
1. Browser öffnen
2. URL: localhost/Perl/test.pl --> OK!!!
Kein neuer Eintrag in der Error.log
renee
 2004-07-03 14:00
#30809 #30809
User since
2003-08-04
14371 Artikel
ModeratorIn
[Homepage] [default_avatar]
Ja, das wird daran liegen, dass test.pl KEIN DirectoryIndex ist. Wenn Du für den Ordner
DirectoryIndex test.pl setzt, dann sollte es gehen (Würde ich aber wirklich auf diesen Ordner beschränken und den DirectoryIndex nicht "global" ändern)...
OTRS-Erweiterungen (http://feature-addons.de/)
Frankfurt Perlmongers (http://frankfurt.pm/)
--

Unterlagen OTRS-Workshop 2012: http://otrs.perl-services.de/workshop.html
Perl-Entwicklung: http://perl-services.de/
GetIT
 2004-07-03 14:20
#30810 #30810
User since
2003-11-02
24 Artikel
BenutzerIn
[default_avatar]
Wohin muss das dann geschrieben werden???

Und außerdem soll das dann für jede Datei in dem Ordner "Perl" gelten und nicht nur für die test.pl
renee
 2004-07-03 18:49
#30811 #30811
User since
2003-08-04
14371 Artikel
ModeratorIn
[Homepage] [default_avatar]
Du kannst weiterhin jedes Skript in dem Ordner ausführen. Der DirectoryIndex sagt nur aus, welche Datei an den Browser geliefert werden soll, wenn keine Datei explizit genannt wird. In 99% aller Fälle beginnt der DirectoryIndex mit index (also index.html, index.pl, index.php ...)
Diese Definition müsstest Du in dem Teil machen:
Code: (dl )
1
2
3
4
<Directory "c:\...\">
 DirectoryIndex test.pl
[... weitere Sachen ...]
</Directory>
\n\n

<!--EDIT|renee|1088866195-->
OTRS-Erweiterungen (http://feature-addons.de/)
Frankfurt Perlmongers (http://frankfurt.pm/)
--

Unterlagen OTRS-Workshop 2012: http://otrs.perl-services.de/workshop.html
Perl-Entwicklung: http://perl-services.de/
GetIT
 2004-07-03 19:16
#30812 #30812
User since
2003-11-02
24 Artikel
BenutzerIn
[default_avatar]
Geht leider auch net. -->Forbidden

Hab das so geändert:
Quote
<Directory "C:/Progamme/WAMPP/Testordner/Perl">
DirectoryIndex test.pl
AddHandler cgi-script .cgi .pl
Options +ExecCGI
</Directory>


Das sagt der error.log:
Quote
[Sat Jul 03 17:08:54 2004] [error] [client 127.0.0.1] attempt to invoke directory as script: C:/Programme/WAMPP/Testordner/Perl/, referer: http://localhost/


Auserdem glaub ich du hast mich wegen "weiterhin alles ausführen" falsch verstanden:
Ich möchte alle Skripte per Maus aktivieren können.
Weil wenn das mit dem DirectoryIndex gegangen wäre, wär ja immer die test.pl aufgegangen sobald ich nur im Browser den Ordner "Perl" geöffnet hätte.
Um andere Skripts (zb. bla.pl) ausführen zu können, müsst ich ja "localhost/Perl/bla.pl" in die Adresszeile eingeben und könnt das nicht per Maus machen - und deswegen gebe ich mich ja mit dem was bisher geht nicht zufrieden.
renee
 2004-07-04 15:28
#30813 #30813
User since
2003-08-04
14371 Artikel
ModeratorIn
[Homepage] [default_avatar]
Um die einzelnen Skripte ohne die Adresszeile aufzurufen musst Du Links machen, die den Namen des Skripts beinhalten. Du kannst nicht alle Skripte ausführen, wenn Du nur .../Perl/ machst.

Da müsstest Du Dir höchstens einen Workaround machen, indem Du eine index.cgi machst, in der Du dann alle Skripte mit system(), exit(), Backticks oder open() aufrufst...
OTRS-Erweiterungen (http://feature-addons.de/)
Frankfurt Perlmongers (http://frankfurt.pm/)
--

Unterlagen OTRS-Workshop 2012: http://otrs.perl-services.de/workshop.html
Perl-Entwicklung: http://perl-services.de/
renee
 2004-07-04 15:34
#30814 #30814
User since
2003-08-04
14371 Artikel
ModeratorIn
[Homepage] [default_avatar]
Oder Du lässt den Index weg und lässt Dir ne auflistung aller Dateien, die im Ordner /Perl/ sind anzeigen.

Code: (dl )
1
2
3
4
5
<Directory "C:/Progamme/WAMPP/Testordner/Perl">
AddHandler cgi-script .cgi .pl
Options +ExecCGI
Options +Indexes
</Directory>


Ein "Forbidden" (Statuscode 403) bekommst Du immer, wenn die Index-Datei fehlt und keine Dateiindizes generiert werden sollen...
OTRS-Erweiterungen (http://feature-addons.de/)
Frankfurt Perlmongers (http://frankfurt.pm/)
--

Unterlagen OTRS-Workshop 2012: http://otrs.perl-services.de/workshop.html
Perl-Entwicklung: http://perl-services.de/
GetIT
 2004-07-04 17:08
#30815 #30815
User since
2003-11-02
24 Artikel
BenutzerIn
[default_avatar]
Danke das du die Suche nach der Lösung nicht schon aufgegeben hast!!!!

Aber leider funktioniert das so auch nicht.
Hab deine Änderung
Quote
<Directory "C:/Progamme/WAMPP/Testordner/Perl">
AddHandler cgi-script .cgi .pl
Options +ExecCGI
Options +Indexes
</Directory>

gemacht, und jetzt bekomme ich kein Forbidden mehr.

Aber dafür wird jezt ein Download gestartet sobald ich auf das Skript (die Datei) klicke.

Error.log:
Quote
[Sun Jul 04 15:03:44 2004] [notice] Parent: Received restart signal -- Restarting the server.
[Sun Jul 04 15:03:44 2004] [notice] Child 3208: Exit event signaled. Child process is ending.
[Sun Jul 04 15:03:44 2004] [notice] Parent: Created child process 924
[Sun Jul 04 15:03:44 2004] [notice] Child 924: Child process is running
[Sun Jul 04 15:03:45 2004] [notice] Child 3208: Released the start mutex
[Sun Jul 04 15:03:45 2004] [notice] Child 924: Acquired the start mutex.
[Sun Jul 04 15:03:45 2004] [notice] Child 924: Starting 250 worker threads.
[Sun Jul 04 15:03:46 2004] [notice] Child 3208: Waiting for 250 worker threads to exit.
[Sun Jul 04 15:03:47 2004] [notice] Child 3208: All worker threads have exited.
[Sun Jul 04 15:03:47 2004] [notice] Child 3208: Child process is exiting


Das gleiche passiert wenn ich dir URL in der Adresszeile eingebe.
GetIT
 2004-07-06 19:25
#30816 #30816
User since
2003-11-02
24 Artikel
BenutzerIn
[default_avatar]
Es läuft!!!!

Hier mal, welche Änderungen durchzuführen sind:

Kommentiere  Zeile 509 (#SciptAlias /cgi-bin/ "C:/Programme/WAMPP/Apache/Apache2/cgi-bin/") aus

Ersetzte Zeilen 515-520 (<Directory>xxx</Directory> durch:
<Directory "C:/Programme/WAMPP/Testordner/Perl">
   AddHandler cgi-script .cgi .pl
   Options +ExecCGI
   Options +Indexes
</Directory>

Die shebang-Zeile in den Skripts muss dann lauten: #!perl
also etwa
Quote
#!perl

print "Es klappt!";
\n\n

<!--EDIT|GetIT|1089128262-->
<< |< 1 2 >| >> 19 Einträge, 2 Seiten



View all threads created 2004-07-02 14:28.