我遇到问题,不知道发生了什么。我基本上是使用此PHP脚本尝试运行go二进制文件:
<?php
shell_exec('/go/bin/x -arg -arg etc');
如果我通过命令行运行此PHP文件,则可以使用。如果我直接在浏览器中运行它(在www下),它将无法正常工作。没有任何错误。cli作为
root
运行,而Apache作为www-data
运行。我已将0777
的权限设置为/go/bin/x
,并且还将所有者/组更改为www-data
。依然没有。什么会导致这种行为?
还要注意
shell_exec
可以工作,但是到目前为止我只运行了其他php文件。
最佳答案
我不知道我以前是怎么想的...问题是输入args中的1个包含文本文件的位置,而apache无权读取该文件。错误在/var/log/apache2/error.log中
关于php - 无法通过PHP shell_exec在Apache下运行go二进制文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62872949/