我正在尝试使用我尝试安装的工具来追踪 php 问题,并且已经追踪到它,我相信,是文件系统的权限问题,我相信......
我现在有以下简单的.php 文件:
<?php
system("/bin/ls");
?>
当我运行此程序时,我在 /var/log/httpd/error_log 中看到以下错误:
sh: /bin/ls: Permission denied
如果我改变 php 来运行:
<?php
system("/bin/env");
?>
然后我看到了我所期望的输出。
因此,不是执行没有权限,而是可执行文件尝试读取的内容出现了问题。
(我在这里尝试使用的工具是 phplicensewatcher - 一种用于监视各种许可证管理守护进程运行情况的工具)
谢谢
答案1
我要检查的前两件事:
PHP 在哪个用户下运行?如果它是由 Apache 生成的,则它可能以“nobody”、“www”或“apache”的身份运行,具体取决于版本和配置。
您要列出哪个目录?请检查该目录的权限。运行 PHP 的用户是否有权访问该目录?