目的:phpを使用してコマンドをMinecraftサーバーコンソールに直接入力します
phpスクリプト(ブラウザーから実行)を使用してシェルスクリプトをexec()しようとしています。ターミナルからphpを実行すると、機能します。しかし、ブラウザでは何も起こりません。
exec('sudo -u root sh /home/minecraft/whitelist-reload.sh', $out, $ret_val);
ターミナルから実行すると、「アレイ0」が表示されますが、ブラウザから「アレイ1」が表示されます。
どうした?シェルを実行すると、その後のすべてが端末にいるかのように機能するべきではありませんか?(シェルスクリプトの内部に何があるかは重要ですか?)
シェルにはすべてのrx権限があり、sudoersファイルに次のようにあります。
www-data ALL = NOPASSWD: /home/minecraft/whitelist-reload.sh