繁体   English   中英

php mkdir()权限被拒绝mac

[英]php mkdir() permissions denied mac

这似乎是一个常见的问题,但我似乎无法找到我正在寻找的确切答案。 我正在OSX上运行XAMPP,并且在我的网络应用程序中我试图允许管理员创建一个目录(如果新的一年不存在)。 因此,在htdocs / mywebapp / images下,如果某个目录不存在,比如2012,那么mkdir()并开始将文件上传到该目录。

从mywebapp目录运行ls -l会显示images目录创建为

drwxr-xr-x   18 myusername  admin    612 Feb 12 17:32 images

所以我尝试的第一件事就是

sudo chmod 0775 images

这没有帮助。 查看httpd.config文件显示用户/组定义为www:www所以我尝试将所有者/组更改为:

sudo chown www:www images

这导致,如预期的那样:

drwxrwxr-x  18 _www      _www     612 Feb 12 17:32 images

但是,再一次,我得到了Permission denied错误。 所以,我对我的下一步是什么感到茫然。 我用来达到这一点的PHP代码在这里:

$directory_self = dirname(__FILE__);
$base_image_path = $directory_self . '/images/'; // outputs "/Applications/XAMPP/xamppfiles/htdocs/mywebapp/images/"
$year = '2012';
$image_path = $base_image_path . $year . '/'; // outputs "/Applications/XAMPP/xamppfiles/htdocs/mywebapp/images/2012/"
if(!file_exists($image_path)){
    mkdir($image_path, 0775);
}

谢谢你的帮助。

尝试检查真正的流程所有者:

  $processUser = posix_getpwuid(posix_geteuid());
  echo($processUser['name']);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM