php 上传文件怎么修改权限

上传video但是新建文件的权限不足,在win中是可以的所以流程是没有问题的,并且一直报错:

Warning: move_uploaded_file(./upload/dianping0912.mp4): failed to open stream: Permission denied in /opt/lampp/htdocs/video_progect/admin/video_updata.php on line 51

Warning: move_uploaded_file(): Unable to move '/opt/lampp/temp/phpIVbkUx' to './upload/dianping0912.mp4' in /opt/lampp/htdocs/video_progect/admin/video_updata.php on line 51
文件上传失败!

我试着修改了一下updata权限,但是还是不行,想问一下怎么修改才能使php能写入文件呢?

clipboard.png

阅读 5k
2 个回答

你要把 $destName 所在的文件夹权限改成 777 顺便把拥有者改成你 php 程序的用户。
一般的后台这个用户叫 www 用户组也叫 www,是不是 www 你要自己确认。
在命令行通过 chmod 修改文件夹权限。chown 修改文件夹用户为 php 程序的用户。chgrp 修改用户组。

chmod -R 777 destDir
chown -R www destDir
chgrp -R www destDir

destDir 替换成你需要权限保存文件的目录。

先上传文件及创建目录之前可以先判断目录是否存在

if(!is_dir($dir))//判断目录是否存在
{
mkdir ($dir,0777,true);//如果目录不存在则创建目录
};

推荐问题