PHP 5.4.14 (fpm-fcgi) を使用して Raspberry PI で Nginx を実行しています。それはすべてうまくいきます。しかし、あるスクリプトでは、shell_exec を使用してシェル呼び出しを行います。
echo shell_exec("sudo python " . $file);
コンソールを使用するとうまく機能します
php test.php
しかし、ブラウザを使用してこのファイルを呼び出すと、phpファイルが実行されますが、shell_execによる出力は得られません(エラーメッセージでさえありません)。
ですから、この問題の解決を手伝っていただければ幸いです。
呼び出された python ファイルは GPIO を使用するため、sudo が必要ですよね?
ここに私のpythonコードがあります:
#!/usr/bin/env python
try:
import RPi.GPIO as GPIO
except RuntimeError:
print "Error Importing GPIO. Did your forgot the superuser privilieges?"
GPIO.setmode(GPIO.BOARD)
GPIO.setwarnings(False)
GPIO.setup(3, GPIO.OUT)
GPIO.output(3, not GPIO.input(3))
print "New LED state is: ", GPIO.input(3)
#GPIO.cleanup()