[英]exec bash script from php website, script not running
有一个带有按钮的网站,单击该按钮应该吃掉bash脚本,该脚本应该用来卸载目录。 该按钮使用以下函数调用functions.inc
php脚本:
function sftmz_release_s3test_connections($bucket_name){
if($bucket_name == 's3test'){
drupal_set_message('Check mount status ! - released?');
$cmd = '/var/www/html/company/sites/default/modules/rp_minisite/admin/script.sh';
exec($cmd);
}
}
我的问题是:当我在外壳中并运行命令时:
/var/www/html/company/sites/default/modules/rp_minisite/admin/script.sh
工作正常。
当我单击按钮时,将显示测试,但它不会运行脚本。 我如何查看日志? 我可以将日志打印到外壳上吗? 我无法使用它,因为它是使用html上的按钮激活的...
我认为这是权限问题?
尝试获取更多有关调用exec
时实际发生的情况的信息:
exec($cmd, $return, $status);
echo '<pre>';
var_dump($return);//is an array, containing the commands output
echo '</pre>';
if ($status === 0)
{//normally, if a cmd exits with 0, all is well
echo 'Command executed';
}
如果发生了一些有趣的事情,您可能要检查您的脚本是否依赖于设置的环境变量/别名等。 也许您必须加载.profile
文件才能使脚本正常工作。
在这里您可以看到如何执行此操作
您是否检查了exec()
函数的返回值? 有关更多信息,请参阅文档 。
尝试使用exec命令的其他参数。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.