ホームページ  >  記事  >  バックエンド開発  >  PHPのWebプログラムでshell_exec()がシェルスクリプトの実行に失敗する問題を解決

PHPのWebプログラムでshell_exec()がシェルスクリプトの実行に失敗する問題を解決

藏色散人
藏色散人転載
2019-12-31 17:49:594562ブラウズ

質問

今日、タイマーを使用するとシェルスクリプトが実行され、ログが正常に出力されることを発見しましたが、現在のシェルスクリプトの実行結果がシステム。

私は Web プログラムを使用しているため、シェル呼び出しも初めてです。これまでこの問題に遭遇したことがないので、推測することしかできません。

判断

1. シェルスクリプトの問題。

検証方法: システム コンソールに入り、スクリプトを直接呼び出して、スクリプトが正常であることを確認します。スクリプト自体のトラブルシューティングを行います。

2. 問題が権限に起因するかどうかを判断する

検証方法: コンソールに入り、実行ログ author.log を表示します。案の定、アカウントの権限に問題があることを示すメッセージが表示されました。

ls シェル スクリプトの情報を確認し、Web プログラムのユーザーとシェル スクリプトの許可されたユーザーが同じアカウントではないことを確認します。同じアカウントに変更してプログラムを再起動すると、問題が解決します。

結論:

同様の問題は、基本的に上記 2 つの側面によって引き起こされます。例外が発生した場合はログを確認してください。基本的にはすべての問題が出力されます。

PHP 関連の知識の詳細については、PHP チュートリアル をご覧ください。

以上がPHPのWebプログラムでshell_exec()がシェルスクリプトの実行に失敗する問題を解決の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はcsdn.netで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。