网站seo优化过程中,难免遇到各式各样的网站问题,下面给大家分享一个网站无法上传图片的案例,错误图:
网站前2个星期都可以,最近突然不行,所以基本可以排除本身的程序问题。
分析思路:
首先对这种不能上传文件的问题,需要做几个基本检查:
1.空间是否满了
2.如果是LINUX服务器,文件数限制是否满了
3.服务是否有上传文件大小的限制
4.服务器的磁盘空间是否足够
如何排除以上4点原因?
以上4点排除以后,可以继续考虑权限问题导致图片无法上传,关于权限限制,需要考虑几个方面的因素:
1.首先考虑当然是图片上传文件夹的权限,是否具有读、写、删除的权限。
2.根据网站的采用的语言,检查该语言需要使用的几个临时目录的权限是否正确。
本例中检查了用户的图片上传目录的权限,甚至给了777权限,但是上传依然失败,但是忽略了对第2点的检查。
此网站使用的是PHP程序,PHP的环境变量里面有关于上传文件临时目录的配置upload_tmp_dir,服务器设置的对应目录是:
LINUX系统:/tmp
该网站使用是linux主机,所以我们查相关PHP.INI配置文件,发现配置如下:
尝试将路径修改为SESSION保存目录
测试上传成功。
结论:以前服务器的/tmp目录配置是777权限,但是这种权限存在漏洞,不排除管理人员修改了/tmp目录权限,导致用户上传图片失败。而用户自己的SESSION目录是有777权限,所以我们修改保存路径后,图片上传成功。