为了账号安全,请及时绑定邮箱和手机立即绑定

php shell_exec 命令没有给出 ubuntu 中 python 脚本的输出

php shell_exec 命令没有给出 ubuntu 中 python 脚本的输出

PHP
狐的传说 2022-01-08 16:51:45
我试图使用 shell_exec 命令从 php 调用 python 文件。但是 shell_exec 没有给出任何输出。我在终端上运行 python 脚本,它给了我正确的输出  python3 var/www/html/thilina/assets/documents/threadsearch.py keyword,equipment_types/2这就是我在控制器中调用 python 脚本的方式  $key = $this->input->post('search');//from ajax         $fnum = $this->input->post('sub');//from ajax        $sym = $key.",".$fnum;//search key + 2     $chk = FCPATH."/assets/documents/threadsearch.py";  $chk = str_replace('\\', '/', $chk);  $output = shell_exec("python3 $chk $sym");//get the output from python script
查看完整描述

1 回答

?
守候你守候我

TA贡献1802条经验 获得超10个赞

  1. 尝试通过附加2>&1到命令来捕获错误流:$output = shell_exec("python3 $chk $sym 2>&1");参见PHP - How to get Shell errors echoed out to screen

  2. 您可能存在操作系统命令注入漏洞(您将用户输入与 shell 命令连接起来)。请参阅https://portswigger.net/web-security/os-command-injection


查看完整回答
反对 回复 2022-01-08
  • 1 回答
  • 0 关注
  • 266 浏览

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号