服务器上的passthru问题
我试图在我的PHP代码(Joomla模块)中运行passthru函数时遇到问题。代码如下(这只是一个片段)
ob_start();
passthru("/usr/bin/whois 85.70.231.130 | /usr/bin/grep 'address:'",$code);
$whoisData = ob_get_contents();
ob_end_clean();
$whoisData = str_replace("address:", "", $whoisData);
$whoisArray = split("n",$whoisData);
echo trim($whoisArray[1]);
当我在我的localhost上运行它时,它回应它应该是什么,但是当我在生产服务器上运行这个代码时,它没有回应,$ code变量包含127(找不到命令)。我尝试将这些命令的绝对路径添加到passthru函数中,但它没有帮助。有趣的是,当我通过ssh和php命令从终端运行代码时,它运行良好,但是当它从应用程序上下文调用时却没有。有人知道我该怎么办吗?谢谢
一些编辑..
safe_mode已启用
webserver没有看到/ usr / bin和/ bin /文件夹,那么从php运行这些命令的最佳方法是什么?
没有找到相关结果
已邀请:
3 个回复
靛新比比催
看起来不像命令的有效路径。 在第二个命令的路径的开头缺少
可能解释命令未找到错误...即使找到第一个
命令。
眠缝
应该给你一个线索。
藕挝