目的:使用PHP來輸入命令直接到的Minecraft服務器控制檯PHP來調用一個shell腳本
我試着使用PHP腳本(從瀏覽器中運行)給exec()的shell腳本。當我運行從終端的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
make'/ home/minecraft/whitelist-reload.sh'可執行文件並嘗試''sudo -u root /home/minecraft/whitelist-reload.sh' ' – MarcDefiant 2012-08-03 11:31:50
使用shell_exec ()而不是用於測試目的。它不會給你命令的返回值,而是它的輸出,所以你可能會看到發生了什麼問題。 – inVader 2012-08-03 11:42:47