Php 无法使用mkdir创建目录

Php 无法使用mkdir创建目录,php,mysql,directory,mkdir,Php,Mysql,Directory,Mkdir,因此,我尝试开发一个脚本,所有用户都可以将图像上传到动态创建的文件夹中 这是我的台词 $newID = 1 mkdir('uploads/job_images/'.$newID.'/',0755); 这将在已设置的“uploads/job_images”内创建一个文件夹 我的问题是,如果“job images”权限设置为755或766,它将不允许我创建目录。 但当我尝试将“job_images”权限设置为777时,它允许我创建一个目录。但他们说777存在安全风险。为什么您认为如果权限设置为75

因此,我尝试开发一个脚本,所有用户都可以将图像上传到动态创建的文件夹中

这是我的台词

$newID = 1
mkdir('uploads/job_images/'.$newID.'/',0755);
这将在已设置的“uploads/job_images”内创建一个文件夹

我的问题是,如果“job images”权限设置为755或766,它将不允许我创建目录。 但当我尝试将“job_images”权限设置为777时,它允许我创建一个目录。但他们说777存在安全风险。为什么您认为如果权限设置为755,我无法在“作业图像”内创建文件夹,但如果“作业图像”权限设置为777,我可以在“作业图像”内创建文件夹

创建的文件夹还将“所有者/组”设置为99/99(无人)。业主小组还好吗

问题:

  • 我可以不使用777到“job_images”文件夹或将其保留到777就可以吗
  • 是否需要更改所创建文件夹的所有者?我可能有一天需要删除这些文件夹
  • 如何默认网站用户创建的文件夹组

  • 尝试使用
    sudo
    将目录的所有权更改为Apache(或运行代码的任何软件/服务/守护程序:)。如果您是目录的创建者,则不需要使用sudo(但在大多数Unix/Linux系统中,您也需要具有目标组权限)


    请阅读。前7个表示所有者组有权读取、写入和执行您的文件。5表示读和执行,不写,因此无法创建新目录。

    我也有同样的问题,PHP限制了一些功能:

    解决方案在/etc/php5/apache2/phi.ini配置文件中设置为指令safe_mode_gid=On


    它适用于我的LAMP服务器Ubuntu 12.04

    您的Web服务器运行在哪个用户/组下?如果不是99/99,请尝试将文件夹的所有权设置为您的Web服务器用户/GroupNot know more。但是需要许可吗?您好,我没有访问root的权限。我只有一个从主机供应商转售帐户。不时有不同的用户创建新文件夹是否意味着我需要不时更改这些新创建文件夹的组所有者?您好,如果您是文件的所有者,您仍然可以使用chown命令更改所有者。在大多数Unix/Linux系统中,您也需要具有目标用户/组权限。“5表示读取和执行,而不写入,因此无法创建新目录。”这意味着如果文件夹设置为755,则没有其他方法在文件夹内创建新目录?很抱歉,我是新手。第一个数字是指所有者,第二个是指所有者组,第三个是指所有人。因此,只有文件所有者才能创建新文件夹(请求“写入”权限):)