Archiv verlassen und diese Seite im Standarddesign anzeigen : cgi-bin geht nicht
hallo,
ich hab mandrake 9.0
darauf den apache installiert
jetzt kann ich aber keine scripts in /var/www/cgi-bin ausführen
ein auszug aus der config datei:
<Directory /var/www/cgi-bin>
AllowOverride All
Options ExecCGI
Order allow,deny
Allow from all
</Directory>
vielleicht weiss ja noch jemand rat, wieso das es nicth geht
gruss, boon
Original geschrieben von boon
[B]hallo,
ich hab mandrake 9.0
darauf den apache installiert
jetzt kann ich aber keine scripts in /var/www/cgi-bin ausführen
Sind die Scripte ausfuehrbar, insbesondere fuer den Apache-User ? Was sagt das log ( ../httpd/error_log ) ?
T;o)Mes
also /var/log/httpd/error.log sagt folgendes:
[Sun May 4 14:40:06 2003] [error] [client 192.168.0.4] client denied by server configuration: /var/www/cgi-bin/test.cgi
die scripte sind auch ausführbar:
-rwxr-xr-x 1 apache apache 70 Mai 4 13:28 test.cgi*
und die verzeichnisse haben alle chmod 0755
michael.sprick
04.05.03, 14:24
Hi,
wie wird denn das Script aufgerufen?
und:
gibt es evtl einen Eintrag, der die Directory Direktive überschreibt?
und:
gibt es einen dazugehörigen Scriptalias? ( ScriptAlias "/cgi-bin/" /var/www/cgi-bin/ )
gruss, Michael
michael.sprick
04.05.03, 14:25
achja:
und:
darf dem Client denn normales HTML angezeigt werden? hat er access auf Http://HOSTNAME ?
also ich hab die einträge
ScriptAlias /cgi-bin/ /var/www/cgi-bin/
ScriptAlias /protected-cgi-bin/ /var/www/protected-cgi-bin/
und
# This should be changed to whatever you set DocumentRoot to.
#
<Directory /var/www/html>
und
<Directory /var/www/cgi-bin>
AllowOverride All
Options ExecCGI Includes IncludesNOEXEC
</Directory>
im script steht folgendes:
#!/bin/perl
print "Content-Type:Text/Html\n\n";
print " Hello World ";
aber so wie ich das sehe, hat apache gar keine berechtigung für das verzeichnis
normale htmldateien gehen dort auch nicht
und wenn ich z.b. http://localhost/cgi-bin/ungueltiges.cgi aufrufe
dann bekomm ich auch den fehler, acces denied (obwohl es ungueltigses.cgi ja gar nicht giebt)
gruss, boon
Wie sind denn die Berechtigungen für das verzeichniss /var/www/cgi-bin?
btw: benutz doch das Perl-Modul CGI, dann musst du den header nicht per print-Befehl senden, außerdem sind da noch n paar andere nützlich Funktionen drin
wo/wie sehe ich, ob das modul geladen ist?
so sieht das aus
drwxr-xr-x 3 root root 4096 Mai 4 15:45 cgi-bin/
drwxr-xr-x 4 root root 4096 Mai 4 15:27 html/
allerdings funktioniert
http://www.bafh.ch/perl/mod_perl-testscript.pl
wieder
Da fällt mir ein: Hast du mod_perl installiert?
Was das CGI-Modul für Perl angeht: Das lädst du mit use CGI; (innerhalt des Perlscripts)
hmm ich hab grad noch was neues herausgefunden
ich hab noch /var/www/perl/
wenn ich jetzt das cgi script hierhin kopiere
mit dem header #!/usr/bin/perl
dann funktioniert es ;)
also ist mod perl ja installiert?!
module_cgi geladen ?
T;o)Mes
ist das das gleiche wie:
LoadModule cgi_module module/mod_cgi.so
?
Ja, ist das selbe
T;o)Mes
Hast du wirklich zwei verschiedene cgi-bin Directorys ?
1.
<Directory /var/www/cgi-bin>
AllowOverride All
Options ExecCGI
Order allow,deny
Allow from all
</Directory>
2.
<Directory /var/www/cgi-bin>
AllowOverride All
Options ExecCGI Includes IncludesNOEXEC
</Directory>
Ausserdem deutet das du im /var/www/perl deine Scripts ausfuehren darfst darauf hin, das du noch mehr doppelte Eintraege hast.
Vielleicht deshalb das Problem.
T;o)Mes
ich hab soviel rumgebastelt, das es jetzt möglich ist, das ich doppelte einträge habe ;(
aber die beiden quotes, die du aufgelistet hast, sind nicht doppelt, sondern die 1. quote wurde in die 2. geändert
gruss, boon
Powered by vBulletin® Version 4.2.5 Copyright ©2024 Adduco Digital e.K. und vBulletin Solutions, Inc. Alle Rechte vorbehalten.