无法获取PHP文件管理器

时间:2015-10-28 21:10:20

标签: php apache permissions

我的网站位于共享主机上。我一直在使用FTP和PHP文件管理器来上传和删除文件。最近我发现了一个由于权限而无法删除的文件,无论是在PHPFM还是在FTP中。所以我使用DirectAdmin(我的计划的唯一选项)来重置所有权限。然后我将public_html和子文件夹中的所有文件的所有权限设置为777递归。我只知道它允许我做的比任何其他许可变体更多。

现在网站以静态方式运行,我可以打开PHP文件管理器,它无权上传文件。但是,我可以在DirectAdmin上传文件,但这感觉不安全。 PHP文件管理器读取:'I / O错误'。目录看起来像这样:

enter image description here

1422和1420是什么意思?如何重新上传文件?谢谢你的帮助。

1 个答案:

答案 0 :(得分:1)

1422是文件所属的user_id,1420是它所属的group_id。

Linux拥有权限系统,您可以在其中为所有者,您的群组和其他所有人授予特殊权限。

权限777表示每个人都可以读/写/执行,您的组(1420)可以读/写/执行,而您(用户1422)可以读/写/执行该文件。

Permissions: 
1 is execute file or open directory 
2 is write 
4 is read

读/写权限是2 + 4 = 6,读/执行(或打开目录)是1 + 4 = 5

这三个数字代表[所有者] [群组] [所有人],因此将文件设置为644意味着用户可以读/写,其他人只需读取文件。

编辑:安全的做法是将所有文件设置为644,将目录设置为755.私有文件应为600,可执行文件为755(PHP文件不可执行)。

Apache以用户apache或httpd运行,这是另一个用户,因此你必须给每个人"读取PHP文件和目录的权限。

Edit2:如果您需要PHP上传文件,那么它实际上是以用户apache / httpd完成的。因此,您需要为每个人提供完全的权限。打开目录并读/写777.文件权限应为666。