AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / server / 问题 / 707465
Accepted
dzhi
dzhi
Asked: 2015-07-22 11:36:41 +0800 CST2015-07-22 11:36:41 +0800 CST 2015-07-22 11:36:41 +0800 CST

方便的 WordPress Web 目录权限?

  • 772

我正在为 WordPress 设置网络服务器。

WordPress 要求它的东西必须由 www 用户拥有,否则在安装插件和主题时遇到问题(要求服务器 FTP 凭据,这很愚蠢,我知道)。

这不是问题,但我想给一个 ssh 用户一个空的 WWW 目录,这样他们就可以自己下载/解包/设置 WordPress(放手方法)。

在他们下载并解压 WordPress 存档后,所有文件都归该特定用户所有,并且由于已经提到的原因,他们在管理插件/主题安装或更新时遇到了问题。

实现这两个目标的最方便和安全的方法是什么,让用户有宾至如归的感觉并安装完整的 WordPress?

似乎 setfacl 可能是一个不错的解决方案,让一个目录下的所有新东西都继承我设置的权限。

任何人都可以提供有关如何实现我想要实现的目标或什至引导我走向其他方向的提示或建议吗?

我将 Nginx 与 PHP-FPM 一起使用。

谢谢!

nginx
  • 3 3 个回答
  • 197 Views

3 个回答

  • Voted
  1. sa289
    2015-07-22T12:50:18+08:002015-07-22T12:50:18+08:00

    另一种选择是您可以创建一个脚本来更改他们在某个目录中上传的文件的所有权。您可以设置 sudoers 文件,这样他们就可以只以 root 身份运行该脚本,而无需密码。

    如果操作不当,这可能是一个安全漏洞,但如果操作正确,则没什么大不了的。有些事情要确保是

    1. 除了 root 之外,没有人可以写入脚本或包含脚本的目录。我建议将它放在 /root 中,并在chattr +i其上设置不可变属性 ( )。
    2. 确保它的编码非常严格,以确保它只会做你想做的事情并且不会被滥用。
    3. 理想情况下,不要让任何人对其具有读取权限,以减少发现 #2 中的错误的机会。
    • 0
  2. Tan Hong Tat
    2015-07-22T18:06:15+08:002015-07-22T18:06:15+08:00

    在 wp-config.php中将常量添加/更新FS_METHOD为“direct”,您可以在不提供任何 FTP 详细信息的情况下进行更新。

    define('FS_METHOD', 'direct');
    

    FS_METHOD 强制文件系统方法。它只能是“direct”、“ssh2”、“ftpext”或“ftpsockets”。通常,只有在遇到更新问题时才应更改此设置。如果您更改它并且它没有帮助,请将其更改回来/删除它。在大多数情况下,如果自动选择的方法不起作用,将其设置为 'ftpsockets' 将起作用。

    (主要偏好)“直接”强制它使用来自 PHP 内部的直接文件 I/O 请求,这会在配置不当的主机上引发安全问题,这会在适当时自动选择。

    (次要偏好)“ssh2”是强制使用 SSH PHP 扩展(如果已安装)(第三个偏好)“ftpext”是强制使用 FTP PHP 扩展进行 FTP 访问,最后。

    (第 4 项偏好)“ftpsockets”利用 PHP Sockets 类进行 FTP 访问。

    来源:https ://codex.wordpress.org/Editing_wp-config.php

    • 0
  3. Best Answer
    dzhi
    2015-07-23T11:36:50+08:002015-07-23T11:36:50+08:00

    我找到了解决方案。是我白痴。

    我从其他主机复制了 php-fpm 池配置并忘记定义用户:用户权限,因此 php 进程以该用户身份运行。

    改变它并将 nginx 用户(www)添加到用户组解决了这个问题。

    • 0

相关问题

  • Gzip 与反向代理缓存

  • nginx 作为代理的行为

  • Nginx 学习资源 [关闭]

  • 提供 70,000 个静态文件 (jpg) 的最佳方式?

  • 在 Apache、LightTPD 和 Nginx Web 服务器上提供 PHP 5.x 应用程序的现状?

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    新安装后 postgres 的默认超级用户用户名/密码是什么?

    • 5 个回答
  • Marko Smith

    SFTP 使用什么端口?

    • 6 个回答
  • Marko Smith

    命令行列出 Windows Active Directory 组中的用户?

    • 9 个回答
  • Marko Smith

    什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同?

    • 3 个回答
  • Marko Smith

    如何确定bash变量是否为空?

    • 15 个回答
  • Martin Hope
    Tom Feiner 如何按大小对 du -h 输出进行排序 2009-02-26 05:42:42 +0800 CST
  • Martin Hope
    Noah Goodrich 什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同? 2009-05-19 18:24:42 +0800 CST
  • Martin Hope
    Brent 如何确定bash变量是否为空? 2009-05-13 09:54:48 +0800 CST
  • Martin Hope
    cletus 您如何找到在 Windows 中打开文件的进程? 2009-05-01 16:47:16 +0800 CST

热门标签

linux nginx windows networking ubuntu domain-name-system amazon-web-services active-directory apache-2.4 ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve