2016-09-23 22 views
0

我用這個代碼運行另一個PHP的一些工作(ffmpeg的轉換)運行EXEC()就在我訪問目標的PHP在瀏覽器

$binpath = get_option('binpath','/usr/bin/php'); 
    $command = $binpath." -cli -f ".ABSPATH."/videocron.php"; 
    exec("$command > /dev/null &", $arrOutput); 

但是當我上傳視頻和運行該代碼不轉換視頻永遠。

但是當我從瀏覽器訪問videocron.php我上傳的所有視頻突然轉換!

我使用替代exec函數(system();exec();passthru();shell_exec();) 和i增加可讀功能檢查videocron.php,它是可讀的。

即使我改變所有者videocron.php以nobody用戶

在mod_security的日誌中我得到這個錯誤:

[Tue Sep 20 23:01:11 2016] [error] [client 37.156.10.171] ModSecurity: Multipart parsing error (init): Multipart: Boundary not found in C-T. [hostname "codenevis.net"] [uri "/lib/upload-ffmpeg.php"] [unique_id "[email protected]"] 

但即使我unistalll的mod_security它不會自動運行。

但在所有不轉換視頻,直到我從瀏覽器訪問videocron.php!

回答

0

感謝您的巨大幫助,並通過耐心&幫助我傾聽我的問題。 我解決它通過安裝mysqli。

yum install php-pdo php-mysqli 

,並重新啓動appache