web-dev-qa-db-ja.com

Xamppでphp.iniのセーフモードを有効にする方法は?

ホームサーバーを(Xammpを使用して)私的使用のためにオンラインにしたいので、セーフモードをオンにする必要があります(私のOSはWindows XPです)

そこで、xamppにあるphpフォルダー内のphp.iniのcongifを次のように変更しました。

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

しかし、私はまだPHPは「セーフモード」で実行されていません。これが発生する前にサーバーをオンラインにしたくありません。誰かがこのエラーを修正する方法を教えてもらえますか?それは役に立たなかった

また、オンラインにする前に、実行/変更する必要のあるその他のセキュリティ対策/構成を提案してください

2
rzlines

safe_mode_exec_dirを入力していないことに注意してください。また、open_basedirを定義したことを願っています。複数のディレクトリの場合は、パスをセミコロンで区切り、パス文字列全体を二重引用符で囲んでください。例えば:

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

また、PHP 手動

セーフモードはPHP 5.3.0で非推奨になり、PHP 6.0.0で削除されました。

同じソースから:

nT(IIS)の場合、各仮想ホストは異なるユーザーアカウントから実行できるため、適切なNTFS権限が設定されていれば、セーフモードの制限はまったく必要ありません。

1
harrymc