PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Apache = cgi files ausführbar machen



face
18.03.02, 09:39
Hi

Ich habe derzeit einen Apache mit Mysql und PHP4 am laufen.
Jetzt habe ich mir mal son syswatch script geladen, da merk ich dann das mein apache das cgi file nicht ausführt sondern das file zum download losschickt.

Wie muss ich vorgehen damit mein Apache das macht ?


Auch hier, für jeden Tip dankbar,
Gruß,
Jens

MrIch
18.03.02, 09:56
ist das Skript ausführbar???

face
18.03.02, 10:25
ich hab chmod 777 drauf gemacht

MrIch
18.03.02, 10:27
ist es im richtigen Ordner? (cgi-bin)
ist das Skript ein Perl Skript, wenn ja, ist das perl modul geladen?

face
18.03.02, 10:28
ich habe das script ganz normal ins htdocs verzeichnis kopiert, kein cgi-bin,
kannst du mir sagen wie ich prüfe ob das perl modul geladen ist?

Gruß,
Jens

MrIch
18.03.02, 18:15
die cgi skripte müßen in das Verzeichnis cgi-bin, ...

z.B. bei SuSE
/usr/local/httpd/cgi-bin
nicht /usr/local/httpd/htdocs

wenn du /etc/init.d/apache restart ausführst siehst du z.B bei SuSE die Module!

face
18.03.02, 18:53
nach einem restart des apaches bekam ich lediglich folgendes zurück : "httpd restarted" .

Und durch kopieren des cgi files in ein vorher erstelltes cgi-bin verzeichnis brachte mir auch nichts :-(


Hab hier mal meine httpd.conf : klick!!! (http://vitelo.dyndns.org/face/httpd_conf.txt)


Woran kanns liegen?

bye, Jens

MrIch
18.03.02, 19:27
Das sind die wichtigen Einträge, also die Skripte müssen in diesen Ordner:

ScriptAlias /cgi-bin/ "/www/apache/cgi-bin/"

#
# "/www/apache/cgi-bin" should be changed to whatever your ScriptAliased
# CGI directory exists, if you have that configured.
#
<Directory "/www/apache/cgi-bin">
AllowOverride None
Options None
Order allow,deny
Allow from all
</Directory>

Sorry, aber viel mehr kann och dir da leider auch nicht zu sagen, ich benutze den Apache meist in Verbindung mit php!

Das einzige was mir noch einfällt: Ist der Interpreter richtig gesetzt?

Die erste Zeile in deinem Skript sagt normalerweise wo der Perl Interpreter liegt, stimmt der Pfad mit deinem System überein?

face
18.03.02, 20:38
Ob der Pfad stimmt oder nicht ist doch in erster linie völlig egal, da der apache das file ja eh nicht an perl übergibt sondern ist direkt zum download anbietet. Der apache weis anscheinedn nicht was er mit einer *.cgi file machen soll !?!?

allerdings habe ich mein cgi file nicht in /www/apache/cgi-bin/ sondern in /www/apache/htdocs/cgi-bin gelegt , anders wusst ich mir nicht zu helfen, weil ich muss das file ja irgenwie öffnen im Browser :-)


Gruß, jens

MrIch
18.03.02, 22:16
das wird der Fehler sein, ...

Denn der Apache merkt automatisch, wenn du cgi-bin eingibst, dass nicht der Ordner /www/apache/htdocs/cgi-bin/ sondern /www/apache/cgi-bin gemeint ist!!!

das sagt diese Zeile:
ScriptAlias /cgi-bin/ "/www/apache/cgi-bin/"

ArneE
06.04.02, 13:47
Problem hatte ich. Perl-Scripte in /usr/local/httpd/cgi-bin schieben, chmod 755 bzw. 777 drauf setzen und im Browser http://MEINEIP/cgi-bin/MEINSCRIPT.cgi angeben. Wenn du weitere Verzeichnisse Perl-fähig machen willst, musst du die httpd.conf im Verzeichnis /etc/httpd entsprechend modifizieren.

Viel Erfolg,