問題のシナリオ: ffmpeg を使用してファイルをトランスコードします。
問題の説明: PHP を使用して、exec()、passthru()、system() の 3 つのメソッドを通じてターミナル ffmpeg コマンドを呼び出し、トランスコーディングを実現します
コードは次のとおりです:
ターミナルでこの php ファイルを実行すると、通常どおりトランスコードできます
ただし、Web 経由でこのファイルにアクセスすると、トランスコードできません。なぜ? ?
以前はffmpegのフルパスが書かれておらず、passthru()のステータスコードはコマンドが見つからなかったというものでしたが、Web上でアクセスすると実行が成功しなかったことを示す1が返されるようになりました。
で php ファイルを直接実行すると、ステータスは 0 になり、実行は成功します。
ffmpeg のユーザー権限に問題がある可能性はありますか?
Web に表示されるユーザーは www-data です
ターミナルは root です
これまでにこのようなことをしたことがありません。この状況の理由は何ですか? 。 。 。
。緊急です、緊急です。 。 。
私の兄はモバイル開発に携わっていますが、私はこれに詳しくなく、よくグーグルで調べましたが、理由も解決策も見つかりませんでした---
------! ! ! ! ! ! ! ! ! ! ! ! !