我想在我的服务器上运行一个可执行文件,当用户点击网页上的一个按钮。我能够使用exec命令运行可执行文件,但程序在'nobody'下运行,即使我遵循了post中的说明:如何从PHP运行root用户下的bash脚本回答:Riateche
但可执行文件仍然在'nobody'下运行
我的可执行程序保存在目录/opt/lampp/htdocs/project
My php code
<?
$variable = 10;
$site_dir = 'project';
echo "<img src ='".exec('/opt/lampp/htdocs/' . $site_dir .'/myProgram '.' '.$_GET['value1'] .' '. $variable )."'>";
?>
您没有在命令前使用sudo
关键字:
echo "<img src ='".exec('/opt/lampp/htdocs/' . $site_dir .'/myProgram '.' '.$_GET['value1'] .' '. $variable )."'>";
应:echo "<img src ='".exec('sudo /opt/lampp/htdocs/' . $site_dir .'/myProgram '.' '.$_GET['value1'] .' '. $variable )."'>";
我认为你需要在sudo users/rules文件中添加一个规则,允许你的命令在不输入你的或root密码的情况下运行。这个链接可能会告诉你怎么做。这里https://help.ubuntu.com/community/RootSudo