【Linux服务器配置】在windows系统上正常,在Linux上php的文件上传失败

以本人使用的是阿里云的CentOS服务器为例:
本地windows系统上可以正常进行文件上传的,将文件传到服务器上文件显示不出来,且利用打印出来的结果是“文件上传失败”

if(!move_uploaded_file($_FILES['avatar']['tmp_name'], $target)){
   $GLOBALS['error_message']='上传文件失败';
    return;
}

而打印$_FILES[‘avatar’]可以打印出数据

var_dump($_FILES['avatar']);

由此可判断是移动函数move_uploaded_file没有正常执行

解决方案:为临时文件夹与目标文件夹的权限进行了修改,修改为所有人可读可写可操作

1、将临时文件夹的权限修改为所有人可读可写可执行

在临时文件夹下执行,本人使用的临时文件夹为/tmp,故而进入根目录/,执行命令:

chmod 777 tmp

2、将目标文件夹的权限修改为所有人可读可写可执行

进入目标文件夹(uploads)的父文件夹,执行命令:

chmod 777 uploads

3、重启Apache服务器

$sudo systemctl restart httpd
发布了43 篇原创文章 · 获赞 1 · 访问量 3148

猜你喜欢

转载自blog.csdn.net/u011523953/article/details/104270905
今日推荐