首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >对mkdir的权限被拒绝

对mkdir的权限被拒绝
EN

Stack Overflow用户
提问于 2012-08-17 18:09:10
回答 3查看 16.3K关注 0票数 5

我使用mkdir()在我的服务器上创建一个目录:

代码语言:javascript
运行
复制
// $var_name is equal to an md5() hash
$path = "/var/www/publish/" . $var_name;
if(mkdir($path)) {
  echo "success";
} else {
  echo "error";
}

这将由于权限被拒绝而产生错误。通过执行ls -lh在我的服务器上查找

代码语言:javascript
运行
复制
drwxr-xr-x  2 root     root   4.0K Aug 17 09:05   publish

但是,如果我的$path等于$path = "/var/www/" . $var_name;,它将创建我期望的文件夹。这里的问题似乎是什么。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2012-08-17 18:12:12

/var/www/publish文件夹的权限错误。您需要确保apache用户具有创建目录所需的权限。

您可以在/var/www/中创建目录,因为它具有不同的权限。

检查运行httpd进程时所使用的用户名,并通过chown -R user:group /var/www/publish连接到该用户/组。在debian上,这似乎是www-data/www-data,所以您需要运行以下命令chown -R www-data:www-data /var/www/publish

票数 10
EN

Stack Overflow用户

发布于 2012-08-17 18:14:06

在PHP中使用mkdir()时,它是以apache用户(ubuntu上的www-data)执行的,您可以使用chown在发布上设置与/var/www上相同的权限

在ubuntu上:

代码语言:javascript
运行
复制
chown www-data.www-data /var/www/publish

问候

模仿

票数 2
EN

Stack Overflow用户

发布于 2012-08-17 18:29:31

修复发布文件夹(由root拥有!)的权限。一种不安全的方式:chmod 777 /var/www/publish

最好运行suphp并将发布文件夹的所有者更改为您的php用户(+w权限)。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/12003794

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档