没有人拥有者(99 99)在FTP中由php功能引起?

2024-04-18

我有一个脚本(Joomla),可以在服务器上创建文件和目录。问题是它在所有者 99 99(无人)下创建它们,并且在没有服务器管理员帮助的情况下我无法通过 FTP 删除或修改它们。

我认为那是move_uploaded_filephp 的函数。

WHM 或服务器管理员是否有解决此问题的方法?我可以修改 ftp 中的默认所有者吗?


发生的情况是 HTTP 服务器由一个名为“nobody”的用户运行,而您的 FTP 用户是另一个用户。上传时,HTTP 服务器会在其用户名下创建文件,而您的 FTP 用户没有写入(或删除)这些文件的权限。

解决此问题的最简单方法(但并不真正安全)是将两个用户添加到同一组中,并更改文件权限以允许同一组的用户读取/写入这些文件。

您的管理员应该处理它,但您必须调用 chmod() 来更改上传文件的权限。

更好地解释一下:

linux/unix文件权限由用户(u)、组(g)和其他(o)权限组成。 我在这里只介绍 3 种类型的文件权限,即读 (r)、写 (w) 和执行 (x)。所以,你最终会得到这样的结果:

-rw-rw---x   1 jweyrich  staff  12288 Oct 24 00:22 avatar.png
  • 第一个 rw- 是拥有该文件的用户 (jweyrich) 的权限(读/写)。
  • 第二个 rw- 是拥有该文件的 GROUP(staff)的权限(读/写)。
  • 末尾的 --x 是其他用户的权限(执行)。

您的 PHP 脚本以“nobody”用户(以及“nobody”组)身份运行,因此您从 PHP 创建的每个文件都将归“nobody”用户(及其组)所有。用户可以是一个或多个组的一部分。

要解决权限问题,您的 FTP 用户和“nobody”必须处于一个common组,假设管理员将您的用户置于“nobody”中。 一旦他们位于同一组中,您的 PHP 脚本必须向“nobody”组成员授予“rw”(读/写)权限。为此:

chmod("path_to_your_file", 0770);

0770 相当于 "u+rwx,g+rwx,o-rwx" ,我在这里解释一下:

  • u+rwx = 对于用户(所有者,即“nobody”),授予读/写/执行权限
  • u+rwx = 对于组(也是“nobody”),授予读/写/执行权限
  • o-rxw = 对于其他人,删除读/写/执行权限

之后,您的 FTP 用户(现在属于“nobody”组的一部分)将具有对上传文件的读//写访问权限,因此也可以删除这些文件。它看起来像这样:

-rwxrwx---   1 nobody  nobody  12288 Oct 24 00:22 avatar.png

这不是对 unix 文件权限的理想介绍,但我希望这会有所帮助。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

没有人拥有者(99 99)在FTP中由php功能引起? 的相关文章

随机推荐

  • OpenJDK 8:无法解析主机名

    我正在尝试奔跑slf4j with log4jopenJDK 8 上的 2 8 Ubuntu 上的最新版本8u131 b11 0ubuntu1 17 04 1 当通过 maven openjdk 运行简单的 java 类时 无法解析本地主机
  • 如何读取cassandra数据而不区分大小写

    我需要从 cassandra 获取数据而不区分大小写 请帮我 Cassandra 中没有区分大小写的概念 所有数据都存储为byte 所以它甚至不是一个字符串 您可以制作自定义比较器 参见API http wiki apache org ca
  • 如何在 Excel 中根据验证结果进行条件格式设置?

    如果单元格无效 我想更改单元格的格式 在这种情况下 有效 意味着单元格未通过数据验证规则 我问这个问题是因为我在SO上找不到答案 我最终解决了它 我将发布我的答案 看看人们是否愿意发表评论或提供更好的答案 这是一个基本大纲 我想在本周晚些时
  • 局部变量和全局变量默认是如何初始化的?

    根据以下内容 我对吗 global A 引用被初始化为 null global int 为 0 local A 引用为空 local int 未初始化 global A x 和 local A x 均未初始化 谢谢你的帮助 A global
  • 如何在 IDE 中使用 Grails 依赖项

    So I finally https stackoverflow com questions 1867064 grails and local maven dependencies让我的依赖项与 Grails 一起工作 现在 我的 IDE
  • 如何创建行列总和为 1 和 0 的对称矩阵

    我试图找到一种优雅的算法来创建 1 和 0 的 N x N 矩阵 但有以下限制 每行每列之和必须为Q 可自由选择 对角线必须是 0 矩阵必须是对称的 矩阵不一定是随机的 然而 随机和非随机解都很有趣 因此对于 Q 偶数 只需使每一行成为向量
  • Spring验证字符串值是JSON

    我的配置文件中有一些值 它应该是 JSON 它将作为字符串加载 我希望 Spring 在注入之前验证该值确实是有效的 JSON 否则会抛出错误 我已经阅读了现有的验证注释 例如 NotNull Size Min Max Email NotE
  • 使用 Read::read_to_string 从 TcpStream 读取会挂起,直到远程端关闭连接

    我正在尝试实施Haskell IRC 机器人教程 https wiki haskell org Roll your own IRC bot在 Rust 中 我在阅读连接后服务器发送给我的内容时遇到一些困难 似乎发生的情况是 我连接并从服务器
  • C 中正确的 Hello World [关闭]

    Closed 这个问题是基于意见的 help closed questions 目前不接受答案 正确的 C 语言 Hello World 程序是什么 从第一页开始 c 你好世界 的 Google 搜索结果 http www google c
  • 离线时如何将数据写入firebase?斯威夫特3

    在 tableView 中我有一个工作列表 这些作业可以由多个用户访问 因此我需要使用 FIRTransaction 根据第一次写入 FirebaseDatabase 的结果 我需要写入 不写入 Firebase 中的另一个路径 架构如下
  • Firebase 通知主题的限制

    我想为我的 Android 应用程序使用 Firebase 通知 我想知道主题数量是否有限制 或者可以订阅某个主题的用户数量 例如 我可以有 10000 个主题 每个主题有 100 万用户吗 主题或订阅的数量没有限制 主题最初推出后第一年的
  • 自己的图像作为范围内的滑块拇指。如何在CSS上设置样式

    如何使用 css 将图像设置为范围输入类型上的拇指滑块 它在 Internet Explorer 中不起作用 Chrome 和 Firefox 没问题 但在 IE 上我的图像被隐藏了还是怎么的 我用 ms thumb 并尝试将图像设置为背景
  • 使用 TEXT 或 VARCHAR 哪种 DATATYPE 更好?

    这个问题基于两件事表现 and size 使用 TEXT 或 VARCHAR 哪种 DATATYPE 更好 基于哪些性能会影响哪些性能会得到改善 这取决于你用它做什么 我不想给出如此笼统的答案 但这是事实 一般来说 尝试尽可能具体地获取数据
  • 调试时会忽略依赖项 org.apache.httpcomponents:httpclient:4.5,因为它可能与提供的内部版本冲突

    我试图将图像上传到服务器 由于我是 Android 新手 我正在尝试使用其他代码 这是我的错误 错误文件 https i stack imgur com rZnw6 jpg 这是我的活动文件 import android app Activ
  • Excel、ActiveCell.Row 取决于单击与按 Enter 键

    我的工作表中有 VBA 代码 它是工作表更改事件 Private Sub Worksheet Change 在此工作表上 我有带有数据验证的下拉菜单 所以我可以选择一个下拉菜单并选择 水果 做出选择后 工作表更改事件会记录我当前所在的行 并
  • Flex - 将滚动条的位置更改为 Horizo​​ntalList 组件的顶部

    默认情况下 Horizo ntalList 组件的水平滚动条位于底部 有没有办法重新定位它 使其位于顶部 为了清楚起见 我并不是指使用scrollToIndex或horizo ntalScrollPosition或类似的方法移动滚动位置 而
  • 在 Flex 中将字符串模式解析为日期

    flex 中是否有某种方法可以解析迄今为止的字符串 我希望它支持类似于 dateformatter 的自定义格式 使用 dateformatter 类 我们可以解析 formatString property 指定的各种字符串格式的日期对象
  • 您可以在 64 位 Windows 7 上使用 Mercurial “推送”到网络共享吗?

    我们正在从 Windows XP x86 升级到 Windows 7 x64 我正在测试当前工作流程的兼容性问题 目前 我们将中央 Mercurial 存储库存储在网络共享上 将副本克隆到我们的工作站 并将更改推送回基于网络的存储库 这在
  • 相当于 php call_user_func 的 javascript

    我发现了我已经实现的这个主题 参见已接受的答案 相当于 PHP 的 call user func 的 JavaScript https stackoverflow com questions 5818313 javascript equiv
  • 没有人拥有者(99 99)在FTP中由php功能引起?

    我有一个脚本 Joomla 可以在服务器上创建文件和目录 问题是它在所有者 99 99 无人 下创建它们 并且在没有服务器管理员帮助的情况下我无法通过 FTP 删除或修改它们 我认为那是move uploaded filephp 的函数 W