<code><?php $command = '/var/www/html/fzip.out /var/www/html/test /var/www/html/test.fzip'; //$command = 'ls /var/www/html'; system($command,$return); exec($command,$out); //echo $command; print_r($return); echo '<br>=================<br>'; print_r($out);?></code>
第一個$command是自己的shell腳本,目的是為了把第二個參數的資料夾 壓縮到第三個檔案的路徑。說下目前的情況。
1 php.ini 沒開安全模式,可以正常呼叫ls等指令。
2 system執行這個指令的時候回傳126,exec第二參數是空。
3 已經給了產生檔案的html目錄777權限了,被壓縮的test目錄也是777權限
4 直接用命令列可以執行這個指令
求解還有需要進行什麼配置 才可以執行這樣的自訂腳本嗎? ?
<code><?php $command = '/var/www/html/fzip.out /var/www/html/test /var/www/html/test.fzip'; //$command = 'ls /var/www/html'; system($command,$return); exec($command,$out); //echo $command; print_r($return); echo '<br>=================<br>'; print_r($out);?></code>
第一個$command是自己的shell腳本,目的是為了把第二個參數的資料夾 壓縮到第三個檔案的路徑。說下目前的情況。
1 php.ini 沒開安全模式,可以正常呼叫ls等指令。
2 system執行這個指令的時候回傳126,exec第二參數是空。
3 已經給了產生檔案的html目錄777權限了,被壓縮的test目錄也是777權限
4 直接用命令列可以執行這個指令
求解還有需要進行什麼配置 才可以執行這樣的自訂腳本嗎? ?
最後發現被selinux阻止執行,留個結果,大家參考下。表現就是在php-cli模式下 可以正常執行腳本,在網頁中執行回傳126 加了sudo回傳 1