ホームページ >バックエンド開発 >PHPチュートリアル >警告: chmod() は、_PHP 教程ではセキュリティ上の理由から無効になっています

警告: chmod() は、_PHP 教程ではセキュリティ上の理由から無効になっています

WBOY
WBOYオリジナル
2016-07-13 17:11:061406ブラウズ

警告: D:\freehost\xxx\WindFile.php の 102 行目で chmod() がセキュリティ上の理由から無効になっています 英語の意味によると、chmod() がセキュリティ上の理由から無効になっていることがわかります。解決策は何ですか? ? 非常に簡単で、chmod() を無効にするだけです。

サーバー権限がある場合、操作方法は非常に簡単です。PHP.INI を開いて次の行を見つけます。

コードは次のとおりですコードをコピー
機能を無効にする =

複数の機能を無効にする場合は、半角カンマで区切って最後に追加してください。

例を挙げてください:

コードは次のとおりですdisable_functions = passthru、exec、system、popen、chroot、scandir、chgrp、chown、escapeshサーバー権限がない場合は、プログラムからのみ開始できます。以下では、ecmall を使用してこの問題を解決します
コードをコピー

ellcmd、escapeshellarg、shell_exec、proc_open、proc_get_status


ステップ 1: eccore/controller/message.base.php を見つけます

します

コードは次のとおりですif ($errno == 2048) {を
コードをコピー
true を返します;
}

に置き換えました

コードは次のとおりですif ($errno == 2048 || (($errno & error_reporting()) != $errno))
コードをコピー
{

//エラーを防ぐために _at メソッドを使用する必要はもうありません
//エラーがマスクされている場合、例外はスローされません。この処理により、コード内で通常どおり error_reporting を使用してエラー報告を制御できるようになります
true を返します;
}

ステップ 2: eccore/ecmall.php を見つけます


コードは次のとおりです関数_at($fun)は
コードをコピー
{

$arg = func_get_args();
unset($arg[0]);
restore_error_handler();
$ret_val = @call_user_func_array($fun, $arg);
reset_error_handler();

$ret_val を返します;

}


に変更されました

コードは次のとおりです関数_at($fun)

後から変更する必要がないように、開発中にいくつかの危険な機能を回避するよう最善を尽くします

以下に一般的なサーバーで禁止されている機能をリストします。
コードをコピー
{

$arg = func_get_args();
unset($arg[0]);
$ret_val = @call_user_func_array($fun, $arg);

$ret_val を返します;

}


コードは次のとおりです コードをコピー

disable_functions = system、exec、shell_exec、passthru、proc_open、proc_close、proc_get_status、checkdnsrr、getmxrr、getservbyname、getservbyport、syslog、popen、show_source、highlight_file、dl、socket_listen、socket_create、socket_bind、socket_accept、socket_connect、stream_socket_server、 ■socket_accept、 stream_socket_client、ftp_connect、ftp_login、ftp_pasv、ftp_get、sys_getloadavg、disk_total_space、disk_free_space、posix_ctermid、posix_get_last_error、posix_getcwd、posix_getegid、posix_geteuid、posix_getgid、posix_getgrnam、posix_get、グループ、posix_getlogin、posix_getpgid、posix_getpgrp、posix_getpid、posix_getppid、posix_getpwnam、posix_getpwuid、posix_getrlimit、 posix_getsid 、posix_getuid、posix_isatty、posix_kill、posix_mkfifo、posix_setegid、posix_seteuid、posix_setgid、posix_setpgid、posix_setsid、posix_setuid、posix_strerror、posix_times、posix_ttyname、posix_uname

www.bkjia.com本当http://www.bkjia.com/PHPjc/629637.html技術記事警告: D:\freehost\xxx\WindFile.php の 102 行目で chmod() がセキュリティ上の理由から無効になっています 英語の意味によると、chmod() がセキュリティ上の理由から無効になっていることがわかります...
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。