PHP のセーフモードがオンになった後に制限される場所。
セーフモードがオンになった後に制限される場所。
-----解決策---------- -- --------
PHP で保存モデルがオンになっている場合、system() およびその他のプログラム実行関数は、このディレクトリにないプログラムの起動を拒否します。 Windows では、safe_mode_allowed_env_varsstring を含む / をディレクトリ区切り文字として使用する必要があります
セーフ モードによって制限またはブロックされる関数
関数名 制限
dbmopen() 操作されているファイルまたはディレクトリが同じであるかどうかを確認します実行中のスクリプト スクリプトの UID (所有者) は同じです。
dbase_open() は、操作されているファイルまたはディレクトリが、実行されているスクリプトと同じ UID (所有者) を持つかどうかを確認します。
filepro() は、操作されているファイルまたはディレクトリが、実行されているスクリプトと同じ UID (所有者) を持つかどうかを確認します。
filepro_rowcount() は、操作されているファイルまたはディレクトリが、実行されているスクリプトと同じ UID (所有者) を持つかどうかを確認します。
filepro_retrieve() は、操作されているファイルまたはディレクトリが、実行されているスクリプトと同じ UID (所有者) を持つかどうかを確認します。
ifx_* sql_safe_mode 制限、(!= セーフ モード)
ingres_* sql_safe_mode 制限、(!= セーフ モード)
mysql_* sql_safe_mode 制限、(!= セーフ モード)
pg_loimport() チェックは操作されているファイルまたはディレクトリが、実行されているスクリプトと同じ UID (所有者) を持つかどうか。
posix_mkfifo() は、操作されているディレクトリが実行されているスクリプトと同じ UID (所有者) を持つかどうかをチェックします。
putenv() は、ini によって設定されたsafe_mode_protected_env_vars オプションとsafe_mode_allowed_env_vars オプションを尊重します。 putenv() 関数のドキュメントを参照してください。
move_uploaded_file() は、操作されているファイルまたはディレクトリが、実行されているスクリプトと同じ UID (所有者) を持つかどうかを確認します。
chdir() は、操作されているディレクトリが、実行されているスクリプトと同じ UID (所有者) を持つかどうかを確認します。
dl() この関数は、PHP がセーフ モードで実行されている場合には使用できません。
バックティック演算子 この関数は、PHP がセーフ モードで実行されている場合には使用できません。
shell_exec() (機能的にはバックティック関数と同じ) この関数は、PHP がセーフ モードで実行されている場合には使用できません。
exec() は、safe_mode_exec_dir で設定されたディレクトリ内でのみ操作を実行できます。何らかの理由で、現在、.. は実行可能オブジェクトのパスに使用できません。この関数の引数にはescapeshellcmd()が適用されます。
system() は、safe_mode_exec_dir で設定されたディレクトリ内でのみ操作を実行できます。何らかの理由で、現在、.. は実行可能オブジェクトのパスに使用できません。この関数の引数にはescapeshellcmd()が適用されます。
passthru() は、safe_mode_exec_dir で設定されたディレクトリ内でのみ操作を実行できます。何らかの理由で、現在、.. は実行可能オブジェクトのパスに使用できません。この関数の引数にはescapeshellcmd()が適用されます。
popen() は、safe_mode_exec_dir で設定されたディレクトリ内でのみ操作を実行できます。何らかの理由で、現在、.. は実行可能オブジェクトのパスに使用できません。この関数の引数にはescapeshellcmd()が適用されます。
fopen() は、操作されているディレクトリが、実行されているスクリプトと同じ UID (所有者) を持つかどうかを確認します。
mkdir() は、操作されているディレクトリが、実行されているスクリプトと同じ UID (所有者) を持つかどうかを確認します。
rmdir() は、操作されているディレクトリが実行されているスクリプトと同じ UID (所有者) を持つかどうかを確認します。
rename() は、操作されているファイルまたはディレクトリが、実行されているスクリプトと同じ UID (所有者) を持つかどうかを確認します。 操作されているディレクトリが、実行されているスクリプトと同じ UID (所有者) を持つかどうかを確認します。
unlink() は、操作されているファイルまたはディレクトリが、実行されているスクリプトと同じ UID (所有者) を持つかどうかを確認します。 操作されているディレクトリが、実行されているスクリプトと同じ UID (所有者) を持つかどうかを確認します。
copy() は、操作されているファイルまたはディレクトリが、実行されているスクリプトと同じ UID (所有者) を持っているかどうかを確認します。 操作されているディレクトリが、実行されているスクリプトと同じ UID (所有者) を持つかどうかを確認します。 (ソースとターゲット上)
chgrp() 操作されているファイルまたはディレクトリが、実行されているスクリプトと同じ UID (所有者) を持つかどうかを確認します。
chown() は、操作されているファイルまたはディレクトリが、実行されているスクリプトと同じ UID (所有者) を持つかどうかを確認します。
chmod() は、操作されているファイルまたはディレクトリが、実行されているスクリプトと同じ UID (所有者) を持つかどうかを確認します。 さらに、SUID、SGID、およびスティッキー ビットは設定できません
touch() は、操作されているファイルまたはディレクトリが、実行されているスクリプトと同じ UID (所有者) を持つかどうかを確認します。 操作されているディレクトリが、実行されているスクリプトと同じ UID (所有者) を持つかどうかを確認します。
symlink() は、操作されているファイルまたはディレクトリが、実行されているスクリプトと同じ UID (所有者) を持つかどうかを確認します。 操作されているディレクトリが、実行されているスクリプトと同じ UID (所有者) を持つかどうかを確認します。 (注: テスト対象のみ)
link() 操作中のファイルまたはディレクトリが、実行中のスクリプトと同じ UID (所有者) を持つかどうかを確認します。 操作されているディレクトリが、実行されているスクリプトと同じ UID (所有者) を持つかどうかを確認します。 (注: テスト対象のみ)
apache_request_headers() セーフ モードでは、「authorization」(大文字と小文字が区別されます) で始まるヘッダーは返されません。
header() セーフ モードでは、WWW-Authenticate が設定されている場合、現在のスクリプトの uid がこのヘッダーのレルム部分に追加されます。
PHP_AUTH 変数 セーフ モードでは、変数 PHP_AUTH_USER、PHP_AUTH_PW、および PHP_AUTH_TYPE は $_SERVER で使用できません。ただし、いずれにせよ、REMOTE_USER を使用してユーザー名 (USER) を取得することはできます。 (注: PHP 4.3.0 以降のみ有効)
highlight_file()、show_source() 操作中のファイルまたはディレクトリが、実行中のスクリプトと同じ UID (所有者) を持つかどうかを確認します。 操作されているディレクトリが、実行されているスクリプトと同じ UID (所有者) を持つかどうかを確認します。 (バージョン 4.2.1 以降のみ有効であることに注意してください)
parse_ini_file() 操作されているファイルまたはディレクトリが、実行されているスクリプトと同じ UID (所有者) を持つかどうかを確認します。 操作されているディレクトリが、実行されているスクリプトと同じ UID (所有者) を持つかどうかを確認します。 (バージョン 4.2.1 以降のみ有効であることに注意してください)
set_time_limit() はセーフ モードでは機能しません。
max_execution_time はセーフ モードでは機能しません。
mail() セーフ モードでは、5 番目のパラメータはブロックされます。 (注: PHP 4.2.3 以降のみ影響を受けます)
------解決策--------
safe_mode は唯一の PHP_INI_SYSTEM 属性です。必須 php.ini または httpd.conf 経由で設定します。セーフモードを有効にするには、php.ini を変更するだけです:safe_mode = On または httpd.conf を変更してディレクトリを定義します:
Options FollowSymLinks php_admin_valuesafe_mode 1
Safe_mode は、Apache の再起動後に有効になります。セーフモードを有効にすると、多くの PHP 機能、特にシステム関連のファイルを開く、コマンドの実行、その他の機能が制限されます。
ファイルを操作するすべての関数は、スクリプトと同じ UID を持つファイルのみを操作します
セーフモードは全能ではありませんが (PHP の以前のバージョンではバイパスできます)、依然としてセーフモードを有効にすることを強くお勧めします。セーフモードでは、未知の攻撃をある程度回避できます。ただし、safe_mode を有効にすると多くの制限があり、アプリケーションに影響を与える可能性があるため、調和を図るためにコードと構成を調整する必要があります。セーフモードにより制限またはブロックされる機能については、PHPのマニュアルを参照してください。
-----解決策---------
1階と3階を建てる
------解決策---------
ファイルに書き込もうとしない限り、その後は何もありません 違い
プログラムにファイルの書き込みを許可する場合、どのモードも意味がありません