我正在尝试让我的php测试上传脚本工作,并想知道该命令是什么允许文件在var / www / image目录中的ubuntu服务器上传
答案 0 :(得分:11)
将上传文件的用户名是什么?通常在Ubuntu上,Apache Web服务器用户名是 www-data 。您可以通过在进程列表命令中查找Web服务器进程并查看运行它的用户名来确认。
ps aux | grep apache
或ps aux | grep httpd
应该给你答案。
然后,您通常希望将该Apache用户名作为目录的所有者以及其中的所有文件和目录:
cd /var/www/image
# recursively (all subdirs & files) set owner to www-data for current directory
chown -R www-data .
通常,上面应该足够了,但如果由于某种原因目录,文件或子目录没有所有者用户名的写权限,那么可以通过更改权限来轻松修复,以添加该写权限,如下所示:
cd /var/www/image
# recursively add "w"rite permissions for the "u"ser (owner) to current directory
chmod -R u+w .
答案 1 :(得分:4)
cd /var/www/image
对于像图像这样的文件,您不需要执行权限:
sudo chmod 664 *
如果您在图像中有目录并且想要应用权限:
sudo find . -type d -exec chmod 755 "{}" \;
这将以递归方式搜索您的目录,而chmod 755仅限所有目录。
同样,以下内容只会chmod所有文件(并忽略目录):
sudo find . -type f -exec chmod 644 "{}" \;
带空格的文件名(感谢Nicklas B)
find . -type f -print0 | xargs -0 chmod 644
答案 2 :(得分:1)
将编辑组更改为www-data
chown -R(所有者):www-data(文件夹)
775的文件夹权限
答案 3 :(得分:0)
cd /var/www
sudo chmod 775 image
系统会提示您输入管理员密码 - 这样做,然后点击[返回]。
答案 4 :(得分:-1)
更改编辑组可以解决大多数权限问题。
更改www-data并将权限设置为775。