我在国外的Linux系统上,需要确定运行apache的用户(php也是如此).
目标:我需要获取脚本的所有者(这不是问题,因为我可以使用SplFileInfo)并将其与apache进程的所有者进行比较.
我对任何其他提案持开放态度.
此致,马里奥
编辑:附加信息:
该脚本是缩略图生成器,它使用XML文件从较大的图像生成拇指.该脚本需要创建文件夹和写入文件.因为我不能影响php配置,我没有任何shell访问权限,所以必须非常默默地完成.创建过程通过异常停止并在失败时发送邮件.由于大多数php的函数不能在failue上抛出异常,我需要一些手动检查来确定我所处的环境.因此我需要apache用户将它与某个目录或文件所有者进行比较.
gra*_*ntc 53
你可以调用php exec函数来执行whoami:
<?php echo exec('whoami'); ?>
Run Code Online (Sandbox Code Playgroud)
这里有一些复杂的答案
这对我有用:
$user = getenv('APACHE_RUN_USER');
Run Code Online (Sandbox Code Playgroud)
不确定这是否只是一个新的东西,已经被添加到apache,因为这个问题被问到,但它现在肯定存在.