从PHP运行SHC加密的bash脚本
我试图从php页面运行一个加密的bash脚本从PHP运行SHC加密的bash脚本,php,encryption,Php,Encryption,我试图从php页面运行一个加密的bash脚本 当我在没有加密的情况下运行它时,它会正常运行 该脚本有两个从php代码中获取的变量,只有一行代码 当我以root用户身份运行加密脚本而不使用变量时,它也会运行ok 知道为什么不运行加密 我使用以下方式对其进行加密: shc-f -- 编辑: 了解发生了什么:我像这样运行脚本: $query=exec('sh/usr/lib/cgi-bin/add.sh');echo$query 相反,如果我将其作为root运行,如下所示: $query=exec
- 当我在没有加密的情况下运行它时,它会正常运行
- 该脚本有两个从php代码中获取的变量,只有一行代码
shc-f
--
编辑:
了解发生了什么:我像这样运行脚本:
$query=exec('sh/usr/lib/cgi-bin/add.sh');echo$query代码>
相反,如果我将其作为root运行,如下所示:
$query=exec('sudo/usr/lib/cgi-bin/add.sh');echo$query代码>
它运行正常,但我还有一个问题:
脚本现在运行正常,它给出了输出,但没有php变量传递给它
那么,我的下一个问题是:
php是否可能无法使用以下命令将变量传递给加密的bash:
putenv(“主机=$HOST”)代码>
如果是这样,怎么做?那么发生了什么事,你到底在做什么?您列出了它工作的一些条件,但是您没有告诉我们在不工作的情况下您在做什么,以及问题的具体原因;将“HOST”变量转发给bash。bash唯一要做的就是使用sed删除包含特定变量的行。同样,它可以不加密地工作,但是当我使用上面的命令加密它时,它不会运行。所有的测试脚本在我加密后都会正常运行。你到底是如何运行的?您是否捕获了任何输出?您是否收到任何错误消息?返回码是什么?不,脚本没有输出,我没有得到任何错误;我运行的脚本与未加密的脚本相同:$query=exec('sh/usr/lib/cgi-bin/add.sh');echo$query;尝试将&$output
和&$return
参数添加到exec
以获取更多信息。