PHP Doku:: Fall 4: PHP-Parser außerhalb des Webverzeichnisbaums - security.cgi-bin.shell.html

Verlauf / Chronik / History: (1) anzeigen

Sie sind hier:
Doku-StartseitePHP-HandbuchSicherheitInstallier als CGI-VersionFall 4: PHP-Parser außerhalb des Webverzeichnisbaums

Ein Service von Reinhard Neidl - Webprogrammierung.

Installier als CGI-Version

<<Fall 3: doc_root oder user_dir festlegen

Verwendung als Apache-Modul>>

Fall 4: PHP-Parser außerhalb des Webverzeichnisbaums

Eine sehr sichere Sache ist es, das PHP-Parser-Binary irgendwo außerhalb des Webverzeichnisbaums zu platzieren, beispielsweise in /usr/local/bin. Der einzige Nachteil dieses Verfahrens ist, dass eine Zeile ähnlich der folgenden Zeile:

#!/usr/local/bin/php
als erste Zeile in jeder Datei, die PHP-Tags enthält, stehen muss. Außerdem muss die Datei ausführbar sein. Ansonsten ist sie genauso zu behandeln wie ein beliebiges CGI-Script in Perl oder sh oder anderen gebräuchlichen Skriptsprachen, die den #!-shell-escape-Mechanismus nutzen, um sich selbst aufzurufen.

Damit PHP bei dieser Konfiguration die PATH_INFO- und PATH_TRANSLATED-Informationen korrekt auswertet, sollte der PHP-Parser mit der Option --enable-discard-path kompiliert werden.


Ein BenutzerBeitrag:
- Beiträge aktualisieren...
Andras Rokob
18.10.2006 23:59
You can avoid the need of using the shell-escaping (#! ...) in all your php scripts if you set the executable bit on them and exploit the binfmt_misc support of the Linux kernels.



PHP Powered Diese Seite bei php.net
The PHP manual text and comments are covered by the Creative Commons Attribution 3.0 License © the PHP Documentation Group - Impressum - mail("TO:Reinhard Neidl",...)