1

shell_exec()を使用してシステム上のコマンドをトリガーすると、ログに「見つかりません」というエラーが表示されますが、これはホールコマンドでは発生しません。

適切な出力を使用shell_exec( 'dig google.com' );して取得できますが、トリガーしようとするshell_exec( '/path/to/my.sh param1 param2' );と、

sh: /path/to/my.sh: not found

私はかなり途方に暮れています。元々、Debianでadduserコマンドを巧妙に使用して、この方法で新しいユーザーを生成するつもりでしたが、PHPがトリガーしようとしたときにそのコマンドさえ見つかりませんでした(自分のカスタムシェルと同じエラー)スクリプトファイルなのでsh: adduser: not found

テスト環境では、apacheセッションはITKを使用してrootとして実行します。また、自分のシェルスクリプトに適切な権限があり、実行可能であることも確認しました。

Zend2.3.0およびSuhosin0.9.32.1でPHP5.3.3-7+squeeze14を実行する

4

1 に答える 1

0

コマンドを実行するexec()代わりに試してみてください。shell_exec()それが動作します

于 2012-09-06T07:00:10.177 に答える