2009-06-26 6 views
0

PHP 4.3.9、Apache 2.0.52、CentOS 4.5。セーフモードがオフになっている、私はコマンドラインからapacheのユーザーアカウントとしてプログラムを実行することができますが、すべてのプログラムをPHPから実行/usr/bin/whoamiが存在するかどうかを確認し、実行(および読み取り可能である、モード127外部プログラムへのPHP呼び出しは、すべて終了コード127で失敗します。

+0

CLIからmywhoami.phpを呼び出してみましたか?あなたはおそらくブラウザを通してそれにアクセスします。私にとっては両方の方法で動作します。 – GrGr

+1

シェル(system()は "/ bin/sh -c ..."を使用)は、実行するコマンドが見つからない場合には終了コード127を返します。 –

答えて

1
  • 終了コードで失敗xx5)です。
  • php.inidoc_rootuser_dirに設定していれば、実行できるものを制限することができます。
  • ApacheまたはPHPがchrootされている場合は、アプリケーションをchrootに実行する必要があります。
  • マシンに他のセキュリティシステムまたはRBACが実行されている場合は、dmesgまたはログファイル/var/log/を参照してください。
  • $retの代わりに&$retを使用することを忘れないでください。
  • PHPのexec()passthru()を参照してください。異なる機能が異なる状況で機能する可能性があります。
  • Apache用に別のphp.iniがあり、cli用に別のものがあることをご存じですか。
関連する問題