PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : PHP funktioniert nur im root ??



phpfreak
25.07.02, 13:18
Hallo,
meine Frage: ich habe mir den Apachen und PHP installiert, und mir nun unter htdocs einen Ordner namens cgi-bin erstellt. Dort kopiere ich mir nun meine phpinfo.php rein. Wenn ich dann aufrufe http://localhost/cgi-bin/phpinfo.php kommt ein "Seite kann nicht angezeigt werden". Gebe ich die phpinfo.php direkt in das htdocs-root funktioniert's. :(

woran könnte das liegen??

bitt um eure hilfe

howlcoyote
25.07.02, 13:29
Ja, richtig. Und was ist nun Deine Frage?

Standardmäßig ist cgi-bin in der /etc/httpd/httpd.conf als Pfad für cgi's eingetragen. Du kannst die Pfade natürlich auch ändern in der o.g. Datei.

Aber so, wie Du es beschreibst, ist die Default-Einstellung mit der ich übrigens seit ein paar Jahren im professionellen Bereich zurechtkomme.

phpfreak
25.07.02, 16:33
meine frage ist ganz einfach die, ob php nur im root funktioiert.

Ich erstelle mir einen Ordner namens "php" und speichere dort meine php scripts ab. das funktioniert leider nicht.

Auch das cgi-bin verzeichnis wird nicht geparst!

php scripts funktionieren nur in der root hierachie, also direkt im htdocs verzeichnis.
ich möchte bewerkstelligen, daß php auch in allen unterordnern funktioniert (geparst) wird.

sepp2k
25.07.02, 18:06
Original geschrieben von phpfreak
Hallo,
meine Frage: ich habe mir den Apachen und PHP installiert, und mir nun unter htdocs einen Ordner namens cgi-bin erstellt. Dort kopiere ich mir nun meine phpinfo.php rein. Wenn ich dann aufrufe http://localhost/cgi-bin/phpinfo.php kommt ein "Seite kann nicht angezeigt werden". Gebe ich die phpinfo.php direkt in das htdocs-root funktioniert's. :(

woran könnte das liegen??

bitt um eure hilfe
Wenn du http://localhost/cgi-bin eingibst ruft er nicht /bla/bla/htdocs sondern /bla/bla/cgi-bin auf. Ich weiß eh nicht warum du den php-skript ins cgi-bin steckst, da müssen die Perl und andere CGI-Skripte rein. Pack den Skript einfach innen anderen Ordner und es geht.

howlcoyote
25.07.02, 18:13
Ich verstehe Dein Problem immer noch nicht so ganz. Du hast oben geschrieben, dass die PHP-Scripts nicht im cgi-bin directory laufen. Jetzt schreibst Du plötzlich, dass die Skripte nicht in den Unterverzeichnissen von /usr/local/httpd/htdocs funktionieren.

Wenn Du ein Verzeichnis /usr/local/httpd/htdocs/xxx anlegst, wobei xxx Dein neues Unterverzeichnis ist, sollten PHP-Skripte funktionieren - vorausgesetzt, die Berechtigungen für das Verzeichnis sind für den Webserver gesetzt.

sepp2k
25.07.02, 18:17
Er hat cgi-bin als Unterverzeichnis von htDocs erstellt. Das geht nartürlich nicht

phpfreak
25.07.02, 18:52
was muß ich dem apachen bzw der php.ini mitteilen, dass er unterhalb von
htdocs alles parst.

das cgi-bin dass bei der installation angelegt wird, befindet sich in der hierachie oberhalb von htdocs.
Habe ich aber mehrere webprojekte, mache ich mir innerhalb von htdocs die einzelnen Projektordner. und dort sollte auch php funktionieren.

ich hoffe ich konnte mich einigermaßen verständlich ausdrücken!

howlcoyote
25.07.02, 20:59
Wir sind der Lösung schon auf die Schliche gekommen, aber Du hast es noch nicht verstanden:

Das Problem ist lediglich, dass Du das Verzeichnis /usr/local/httpd/htdocs/cgi-bin genannt hast und aus diesem Verzeichnis php-scripts ausführen willst. Lege ein Verzeichnis namens /usr/local/httpd/htdocs/meinphptest an und Du wirst sehen, dass PHP auch in den Unterverzeichnissen funktioniert. Nur eben nicht in cgi-bin!

READY
25.07.02, 22:51
mhm normal is der cgi-bin ordner aber auch:
/usr/local/httpd/cgi-bin
und da werden halt nur perl scripte ausgeführt und html's angezeigt ;)