0

私は唖然とし、これまでこの問題を見たことがありませんでした.php.iniを介してshell_exec(およびその他の機能)を無効にしようとして、夜と朝の間ずっと忙しかったのですが、何も機能していないようです. phpinfo() を実行すると、ローカル値は機能が無効になっていることを示し、マスター値は設定されていません。

ただし、関数 (shell_exec() のような関数) を実行しようとすると、機能しなくなり、無効になる代わりに出力が返されます。

どんな助けでも大歓迎です、私たちは完全に迷っています。Plesk 11 で Ubuntu を実行しています。

敬具、

4

2 に答える 2

0

Service Plans > your plan > PHP settings > "disable_functions=shell_exec" をテキストボックスの "Additional configuration directives" に書きます - Update & Sync をクリックします

ロックされていないすべてのサブスクリプションは、php.ini ファイルでこのディレクティブを取得します。

disable_function が「ローカル値」と「マスター値」に適用されるまで機能しないことを確認しました。PHP が Apache モジュールとして動作する場合、disable_function はマスター部分に適用されません。Apacheモジュールには、/etc/apache/または/etc/httpd/にある「ロードされた構成ファイル」があるため、これが発生していると確信しています。そのため、PHP 設定は 2 つの個別の php.ini ファイル (グローバルおよびサブスクリプションの php.ini) からマージされます。

FastCGI モードでは「Loaded Configuration File」はサブスクリプション レベルの php.ini であるため、有効な php.ini は 1 つだけです。

したがって、次の手順は明らかです: - FastCGI を使用し、ユーザーに対してこのモードを変更することを禁止します (plesk にはそのような機能があります)。または - Apache モジュールの場合は、同じディレクティブをグローバル php.ini に追加します。

于 2013-06-07T14:33:23.123 に答える