2014-04-18 108 views
0

我想下面的代碼運行從執行shell命令笨控制器方法但它不是工作的執行。Shell命令不笨

function Stopapplication(){ 
    shell_exec('/tmp/stop'); 
    $data['msg']="Application is Successfully Stoped"; 
    $this->load->view('management',$data); 
} 

OR

function Stopapplication(){ 
     popen('cd /home/hesong/ipsc','r'); 
     popen('./fight -q','r');  
     $data['msg']="Application is Successfully Stoped"; 
     $this->load->view('management',$data); 
    } 

也試過EXEC(),POPEN(),系統()爲同樣的目的,但沒有一次成功。 安全模式是關閉的,這些功能都沒有在disable_functions選項列表

注:如果我運行從Corephp文件比其作品該命令。

我在做什麼錯在這裏?

編輯:

使用下面的代碼,並得到錯誤:權限被拒絕

$command="/tmp/stop"; 
$output=shell_exec($command." 2>&1"); 
print "<pre>$output</pre>\n"; 

但應用我試圖停止代碼必須被執行許可。

回答

0

我想你的運行你的web服務器(www-data/apache/etc)的用戶無法訪問你的/tmp/stop路徑。這在CodeIgniter或PHP配置中沒有問題,這是來自操作系統和用戶權限。