我有一個文件,代碼SH:PHP命令未找到錯誤從Web瀏覽器
shell_exec (php test.php)
當我運行從命令提示符下這個文件,它成功運行並在同一個文件,我想通過網絡瀏覽器來運行這會給出錯誤,因爲
sh: php command not found.
可能是什麼問題?
我有一個文件,代碼SH:PHP命令未找到錯誤從Web瀏覽器
shell_exec (php test.php)
當我運行從命令提示符下這個文件,它成功運行並在同一個文件,我想通過網絡瀏覽器來運行這會給出錯誤,因爲
sh: php command not found.
可能是什麼問題?
問題在於php路徑。所以我已經做了這樣的
if(defined('PHP_BINARY') && PHP_BINARY)
{
$path = PHP_BINARY . '/php'; //PHP >= 5.4
}
else if(defined('PHP_BINDER') && PHP_BINDER)
{
$path = PHP_BINDER . '/php'; //PHP < 5.4
}
else
{
//Throws Exception
}
,然後使用該變量在外殼命令作爲
shell_exec ($path test.php)
您能否提供您正在使用的網絡服務器的信息? 如果您使用的是Apache,您可以爲php7安裝libapache2-mod-php7.0。
待辦事項這容易就派上用場了:
apt-get install libapache2-mod-php7.0
或嘗試激活它
sudo a2enmod php7.0
確保PHP文件被標記爲可執行的web服務器用戶(例如www數據)
sudo chmod -R o+x *.php