所以,我的php代码看起来像这样:
exec('ps aux', $out);
在 Ubuntu 上运行它给了我一个包含所有正在运行的进程(所有用户)的网页,但在 Centos OS 7 上,它只显示"apache"用户的进程。有什么办法可以解决这个问题吗?
编辑:无论如何,我都在 VM 上运行它,它只是一个学校项目。
示例输出:
apache 8758 0.0.0.1 33052 7308 ? S S 03:50 0:00 /usr/sbin/httpd - DFOREGROUND
apache 1421 0.0.0.2 5128 2780 ? R 15:24 0:00 ps aux
答案取决于服务器端的很多东西。
很可能正在发生的事情是您的主机正在使用 CPU 组或类似内容隔离您的 apache 实例。我会问你的主机或系统管理员为什么这不起作用,但他们很可能会告诉你他们不会允许它。允许这种事情可能会产生严重的安全影响。