PHP mkdir: 权限被拒绝问题
2022-08-30 07:19:38
我正在尝试使用PHP mkdir函数创建一个目录,但我收到错误,如下所示:.如何解决问题?Warning: mkdir() [function.mkdir]: Permission denied in ...
我正在尝试使用PHP mkdir函数创建一个目录,但我收到错误,如下所示:.如何解决问题?Warning: mkdir() [function.mkdir]: Permission denied in ...
我知道这是一个老线程,但它需要一个更好的答案。您不需要将权限设置为 777,这是一个安全问题,因为它提供了对世界的读取和写入访问权限。可能是您的 apache 用户对目录没有读/写权限。
以下是你在 Ubuntu 中所做的
确保所有文件都归 Apache 组和用户所有。在 Ubuntu 中,它是 www-data group 和 user。
sudo chown -R www-data:www-data /path/to/webserver/www
接下来,使 www 数据组的所有成员能够读取和写入文件
sudo chmod -R g+rw /path/to/webserver/www
php 函数现在应该可以正常工作而不会返回错误mkdir()
对于将来通过谷歌找到这个的人来说,答案很晚。我遇到了同样的问题。
注意:我在MAC OSX LION上
发生的事情是apache以用户“_www”的身份运行,并且没有权限编辑任何文件。你会注意到没有文件系统函数通过php工作。
如何修复:
打开查找器窗口,然后从菜单栏中选择“转到”>“转到文件夹”> /private/etc/apache2
现在打开 httpd.conf
找到:
User _www
Group _www
更改用户名:
User <YOUR LOGIN USERNAME>
现在通过运行这个表单终端来重新启动apache:
sudo apachectl -k restart
如果它仍然不起作用,我碰巧在做上述操作之前执行以下操作。可能相关。
打开终端并运行以下命令:(注意,我的Web服务器文件位于/Library/WebServer/www。根据您的网站位置进行更改)
sudo chmod 775 /Library/WebServer/www
sudo chmod 775 /Library/WebServer/www/*