2017-03-23 15 views
0

私はPHPで動くウェブサイトからシェルスクリプトを実行する必要があります。スクリプトに実行権を設定しました。ウェブサイトからシェルスクリプトを実行してください。

chmod +x AppRaspberry.exe 

これは私のスクリプトです。

#!/bin/bash 
/home/pi/program/Debug/AppRaspberry.exe start 

私のウェブサイトおよびC#アプリケーションは、すべてのアイデア3.ラズベリーパイの上にあるユーザーは、C#アプリケーションを実行するために、自分の設定に構成された準備ができて、それはMySQLデータベースからユーザー設定を読み込むときです。 私はこのコードを使ってスクリプトを実行しますが、動作しませんので、シェルのexecで試してみましたが、私のPHPはこのメソッドを認識しません。

if (!empty($_POST['start'])) 
{ 
exec("/home/pi/script/start.sh"); 
} 
+0

何をあなたはどうしますか? – solarc

+0

私はエラーになりません。私はプログラムを開始するために私のウェブサイト上のボタンを押すと私のスクリプトは、私が使用application.Nowを開始しませんもしくはshell_exec(「/ホーム/ PI /スクリプト/ start.sh」) –

+0

は、PHP(Apacheの?)ですで実行されていますスクリプトと同じユーザーですか?スクリプトに読み取り権限がない可能性があります。 Apacheは、それはあなたが使用しているのphp.iniを参照してください。また、 'は/ var/log/apache' – solarc

答えて

0

それは

+0

私の間違いは修正されましたが、このシェルを使用しないshell_exec() –

+0

コマンドはcorrentですが、私はexecに使用している構文が正しくないと思います。いずれかのシェルスクリプトのパスが間違っています。 –

0

バックティック演算子はもしくはshell_exec関数と同じように動作しますが、いくつかのタイピングを保存schell_execないもしくはshell_execです: chmod 666 file.txt

(つまり、バッククォート文字ではなく単一引用符だということに注意してください)

関連する問題