Wie kann ich den abgesicherten Modus für php.ini in Xampp aktivieren?

12816
rzlines

Ich möchte meinen Heimserver für den privaten Gebrauch (mit Xammp) online stellen, daher muss ich den abgesicherten Modus aktivieren (mein Betriebssystem ist Windows XP).

Also habe ich die congif von php.ini im php-Ordner in xampp folgendermaßen geändert:

Safe Mode ; safe_mode = On  ; By default, Safe Mode does a UID compare check when ; opening files. If you want to relax this to a GID compare, ; then turn on safe_mode_gid. safe_mode_gid = On  ; When safe_mode is on, UID/GID checks are bypassed when ; including files from this directory and its subdirectories. ; (directory must also be in include_path or full path must ; be used when including) safe_mode_include_dir =  ; When safe_mode is on, only executables located in the safe_mode_exec_dir ; will be allowed to be executed via the exec family of functions. safe_mode_exec_dir =  ; Setting certain environment variables may be a potential security breach. ; This directive contains a comma-delimited list of prefixes. In Safe Mode, ; the user may only alter environment variables whose names begin with the ; prefixes supplied here. By default, users will only be able to set ; environment variables that begin with PHP_ (e.g. PHP_FOO=BAR). ; ; Note: If this directive is empty, PHP will let the user modify ANY ; environment variable! safe_mode_allowed_env_vars = PHP_  ; This directive contains a comma-delimited list of environment variables that ; the end user won't be able to change using putenv(). These variables will be ; protected even if safe_mode_allowed_env_vars is set to allow to change them. safe_mode_protected_env_vars = LD_LIBRARY_PATH 

Aber ich bekomme immer noch, dass PHP NICHT im "abgesicherten Modus" läuft. Jetzt möchte ich meinen Server nicht online stellen, bevor dies passiert. Kann mir jeder sagen, wie ich diesen Fehler korrigieren kann?

Bitte schlagen Sie auch andere Sicherheitsmaßnahmen / Konfigurationen vor, die ich ergreifen / ändern sollte, bevor Sie es online stellen

2

1 Antwort auf die Frage

1
harrymc

Ich stelle gerade fest, dass Sie nicht ausgefüllt haben safe_mode_exec_dirund ich hoffe, dass Sie definiert haben open_basedir. Achten Sie bei mehreren Verzeichnissen darauf, die Pfade durch ein Semikolon zu trennen und die gesamte Pfadzeichenfolge in Anführungszeichen zu setzen. Zum Beispiel:

safe_mode= Ein
safe_mode_exec_dir = "F: \ WWW \ HTML; F: \ batfiles \ batch"
open_basedir= "F: \ WWW \ HTML; F: \ batfiles \ batch"

Auch aus dem PHP- Handbuch :

Der abgesicherte Modus ist in PHP 5.3.0 veraltet und wird in PHP 6.0.0 entfernt.

Aus derselben Quelle:

Für NT (IIS) kann jeder virtuelle Host von einem anderen Benutzerkonto aus ausgeführt werden. In diesem Fall sind keine Einschränkungen im abgesicherten Modus erforderlich, wenn die richtigen NTFS-Rechte festgelegt sind.

+1 gute Antwort, aber der sichere Modus ist (heute) für xampp anwendbar DaveParillo vor 14 Jahren 1