簡體   English   中英

CentOS 7 shell_exec和exec始終為null

[英]CentOS 7 shell_exec and exec always null

我目前正在為gitlab存儲庫創建一個webhook腳本。 該腳本將運行諸如git之類的shell命令來克隆存儲庫。 我像這樣運行shell命令

$output = shell_exec('which git');
var_dump($output);// NULL

但是沒有輸出,並且在我的服務器上直接在bash中運行which git時會安裝which git

我的服務器是安裝了cpanel和whm的Amazon EC2實例centos 7。

我已經檢查過是否在whim的php ini上禁用了它,但事實並非如此。

shell_exec什么都不輸出的原因可能是什么

編輯:

與相同

exec('which git', $output);
var_dump($output); // NULL

即使我在命令中添加了2>&1以將其輸出到stderrstdout

嘗試執行

$output = exec('which git');
print_r($output);

編輯:我發現在某些操作系統上shell_exec無法正常工作,但是當shell_exec無法正常工作時,我只是使用exec()。 這可能是因為新版本的PHP與之有關,因為過去shell_exec()函數用於惡意目的。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM