0

というスクリプトがありますturn_on.sh。私もスクリプトを持っていますturn_off.sh

turn_on.sh 

プロセスを開始します

turn_off.sh

単純にプロセスを強制終了します (kill -9 pid を使用)

コマンドラインで実行すると、すべて正常に動作します。

これらのスクリプトを php から呼び出すだけでは機能しません。私は試しましshell_execexec、、system。何も機能していないようです。どこにもエラーはありません。

私はchmod 777両方のシェルスクリプトを試しました。それでもうまくいきません。

コード例:

   $val3 = exec($to_run,$val2,$val);

$val2 と $val には何もありません。

PHPsafe_modeはオフです

4

1 に答える 1

0

これにはいくつかの理由が考えられます。

1) PHP スクリプトを apache 経由で実行したため、www-data ユーザーには 2 つのシェル スクリプトを実行する権限がありませんでした。

2) PHP スクリプトを apache 経由で実行したため、www-data ユーザーにはプロセスを開始または強制終了する権限がありませんでした。

3) ...

スクリプトの標準出力とエラー出力をログ ファイルにリダイレクトして、より適切に分析できるようにしてください。set -xを使用して、より完全なデバッグ トレースを取得することもできます。

于 2013-11-10T16:01:53.087 に答える