这篇文章主要介绍“怎么解决linux php不能上传文件夹的问题”,在日常操作中,相信很多人在怎么解决linux php不能上传文件夹的问题问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”怎么解决linux php不能上传文件夹的问题”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!
本文操作环境:linux5.9.8系统、PHP7.1版,DELL G3电脑
linux php不能上传文件夹怎么办?
php上传不到文件(Linux 服务器)
今天发现突然就上传不到文件了php.ini的配置已经是.
环境:linux(Centos 5.3) + Apache + php +mysql
网站目录文件:使用smb挂载 windows 服务器的磁盘阵列共享
网站目录权限:777
php.ini :
-----------------------------------------------------
upload_max_filesize = 200M max_file_uploads = 20 post_max_size = 200M max_execution_time = 60000 max_input_time = 6000 ;max_input_nesting_level = 64 memory_limit = 256M
------------------------------------------------------
可CMS系统一直提示说没有足够的权限,查阅相关资料得知php.ini文件中有一个指定临时文件夹的参数(会把所有上传的文件都放到临时文件夹里面)
即:
-----------------------------------------------------
;upload_tmp_dir =
-----------------------------------------------------
上面默认是注释的,即会使用虚拟内存来做存储
当内存使用满了就会出现上传不到文件的问题了,也就是会提示777错误
使用df - h 命令查询 发现结果如下:
--------------------------------------------------------------------------------------
/dev/mapper/VolGroup00-LogVol00 29G 28G 0 100% / /dev/sda1 99M 12M 82M 13% /boot tmpfs 1014M 0 1014M 0% /dev/shm //192.168.1.100/website 322G 21G 301G 7% /www/web/website
----------------------------------------------------------------------------------------
tmpfs已经满了,所以我把改成在mount的目录里面建立了个upload_tmp文件夹,把刚才的“upload_tmp_dir = ”设置成 “upload_tmp_dir =/www/web/website/upload_tmp
”
保存后重启了一下apache,恢复上传了.
注意:要给上传的目录 777权限 包括下面的子目录 chmod -R 777 目录名
总结:
临时文件最好是还是设置成挂载的磁盘空间(最好大一点),因为tmpfs默认值会是物理内存的1/2倍,上传几个文件很快就会满了,这样会引起文件上传不了,所以配置各种网站环境的时候 应该注意临时文件存放的目录.
到此,关于“怎么解决linux php不能上传文件夹的问题”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注亿速云网站,小编会继续努力为大家带来更多实用的文章!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。