【问题标题】:How do I find out which process runs PHP? (Litespeed/Centos environment)如何找出运行 PHP 的进程? (Litespeed/Centos 环境)
【发布时间】:2018-10-07 22:39:42
【问题描述】:

这听起来可能是一个超级幼稚的问题,但事实是这样的:

  1. 拥有一个运行 Centos 7 的专用服务器,带有 multiphp 和 litespeed。
  2. 安装 WHM/cPanel > 然后 WordPress > 然后运行缓存插件。
  3. 插件抛出错误:WP Rocket 由于缺少写入权限而无法自行配置。
  4. 开发人员说:“所有者/组必须与拥有运行 PHP 的进程相同的人。它很少与 cPanel 帐户所有者相同,通常帐户所有者将具有 root 访问权限,而进程通常没有具有 root 访问权限以确保安全。”
  5. 文件夹/文件的所有者/组与 cPanel 帐户持有人相同。

现在我的问题是:我该如何解决这个困境?当开发人员说“所有者/组必须是拥有运行 PHP 的进程的同一个”时,开发人员是什么意思

(cPanel 帐户的?)所有者如何拥有运行 PHP 的进程(什么进程??)?

仅供参考:当然,我获得了 shell 访问权限。这是一个暂存服务器。

【问题讨论】:

  • 不是 cpanel 帐户的所有者。他指的是文件的所有者。请阅读 linux 中的file permissions
  • 找出哪个用户正在运行 litespeed 服务器,简单的方法是<?= shell_exec('whoami') ?>,然后将所有权更改为该用户。在 cmd 行 sudo chown theowner:thegroup /var/www/html -R - 下次不要以 root 身份上传/安装文件。假设你是通过 SSH 做到的..
  • SufiyanGhori:文件的所有者/组和 cpanel 帐户的所有者相同。 @LawrenceCherone,不,从 Cpanel 上传。只使用过 SSH 来检查所有权。让我试试你的方法,我会反馈的......

标签: php caching permissions centos litespeed


【解决方案1】:

我假设您在专用服务器上为 PHP 启用了 SuEXEC。在这种情况下,用户的不同帐户将以不同的权限运行 php。

您可以通过命令ps aux | lsphp 进行检查。输出示例:

jimmy    895363  0.5  0.0 423668 25380 ?        S    22:13   0:00 lsphp
jeff  895389  0.6  0.0 423668 25388 ?        S    22:13   0:00 lsphp

如何修复权限
试试/scripts/disablefileprotect,它应该恢复所有用户的文件权限,在/home/$user和挂载点上设置711。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-01-30
    • 1970-01-01
    • 1970-01-01
    • 2012-03-17
    • 2010-11-10
    • 1970-01-01
    • 1970-01-01
    • 2020-12-22
    相关资源
    最近更新 更多