【问题标题】:Changing permissions to allow PHP to list a folder from user directory更改权限以允许 PHP 列出用户目录中的文件夹
【发布时间】:2012-02-04 09:04:38
【问题描述】:

我有一个带有 Debian 的 VPS,我想在上面为拥有 SSH 帐户的人创建某种下载站点。我的问题是我想在 PHP 中创建一个脚本,它将递归地从用户主文件夹中的特定目录中列出所有文件。该脚本很容易编写,但现在我遇到了权限问题。例如,文件夹是 /home/someuser/resources,它包含:

-file.txt      [file]
-info.doc      [file]
-data          [dir]
---numbers.xls [file]
---people.txt  [file]
-mail.doc      [file]

不幸的是,在使用 PHP 和绝对路径列出此目录后,我得到了

-file.txt      [file]
-info.doc      [file]
-data          [file] <- ?
-mail.doc      [file]

是的。 is_dir('/home/someuser/resources/data') 返回 false。正如我在互联网上阅读的那样,问题是经过许可的。我将 /etc/php5/cgi/php.inisafe_mode_gid 更改为 Off 但没有帮助。我认为我需要更改 chmods。但是如何确保它工作呢?你能帮我解决这个问题吗?

我使用的脚本: http://pastie.org/private/vxnhpkkisintjmncinqzw(是 PHP 手动 cmets 修改后的脚本)

【问题讨论】:

  • 尝试更改目录权限:chmod 755 data
  • 似乎是代码问题,而不是服务器问题。

标签: php directory chmod permissions


【解决方案1】:

第 8 行:语义:while (false !== ...) 使 while (...)

通过阅读您的代码,您似乎在读取目录方面做得很好,但您没有解析显示其内容的嵌套数组。因此,在读取和存储文件时,它们不会被打印出来。

【讨论】:

  • 这不是脚本错误,因为当我执行 getFilesFromDir('.') 时,我会得到所有 Wordpress 文件的完整列表(此脚本是 Wordpress 插件的一部分)。但是感谢您的尝试。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-05-04
  • 2013-03-20
  • 2022-01-22
  • 1970-01-01
  • 1970-01-01
  • 2021-08-22
相关资源
最近更新 更多