服务器磁盘满了,网站报错无法上传图片,清理后发现是日志没轮转

2026-09-08 1,019
下载不了?请联系网站客服提交链接错误!
增值服务:
服务器磁盘满了,网站报错无法上传图片,清理后发现是日志没轮转
最近更新 2026年09月08日
资源编号 365

服务器磁盘满了,网站报错无法上传图片,清理后发现是日志没轮转

2026-09-08 IT专栏 0 1,019 百度已收录
温馨提示丨遇到问题请联系大师邦、随时解决各类问题!
增值服务:
¥ 0 大师币 开通VIP尊享优惠特权
立即下载 升级会员
详情介绍

早上刚到办公室,客户电话就进来了。做婚纱摄影的,网站主要是展示客片和接受预约,地点在浙江杭州市西湖区。

客户说昨天还能正常上传照片,今天一上传就报错,前台看不出问题,后台提示”无法写入文件,请检查目录权限”。第一反应是权限被改了,但登录服务器一查,权限没问题。

用df -h看了下磁盘,/dev/vda1可用空间是0,100%占满。怪不得传不了东西,磁盘都没空间了,别说图片,日志都写不进去了。

哪些东西占满了磁盘

先找到根目录下最大的文件夹:

du -sh /* | sort -rh | head -10

发现/www/wwwlogs这个目录占了将近40G,里面全是nginx和php-fpm的访问日志和错误日志。有些日志文件单个就2个多G,而且最早的日志能追溯到半年前。这么长时间从来没清理过,日志一直往里面写,再大的磁盘也扛不住。

打开其中一个nginx访问日志看了下,里面大部分是正常的GET请求,也有少量404错误。还有几个IP段在扫某个后台路径,目测是有人尝试渗透,频率不高,但每天都有。这些记录按理说保留一两个月就够了,没必要攒半年。

临时清理

先把日志目录里一个月以前的文件移走:

cd /www/wwwlogs
find . -name "*.log" -mtime +30 -delete

清理完释放了大概20G空间,上传功能恢复正常。

但这只是治标不治本,再过几个月日志又会把磁盘填满。真正需要的是配置日志轮转,让系统自动管理日志文件的大小和保留周期。

配置日志轮转

宝塔面板自带的计划任务里有一个”日志切割”功能,设置成每周执行一次,自动把当前日志文件归档压缩,只保留最近四周的日志。操作很简单,在宝塔面板里点几下就行了。

除了宝塔自带的功能,也可以用Linux系统自带的logrotate来处理。在/etc/logrotate.d/nginx里配置一下,可以更精细地控制:

/var/log/nginx/*.log {
    daily
    rotate 30
    compress
    delaycompress
    notifempty
    create 644 nginx nginx
    postrotate
        /etc/init.d/nginx reload
    endscript
}

这段配置的意思是每天轮转一次,保留最近30天的日志,超过30天的自动删除,旧日志自动压缩节省空间。

检查一下还有什么占空间

清理完日志之后,顺便检查了其他目录。发现网站根目录下有个/cache文件夹,里面存了不少临时文件。这是之前客户测试一个缓存插件时留下的,后来插件关了,但这些缓存文件还留着没删。看了一下大概有3G左右,直接清掉了。

数据库目录也看了下,mysql的binlog日志攒了一堆,开启了binlog但没开自动清理,最早的binlog文件已经有几个月了。在mysql配置里加了expire_logs_days = 7,设置只保留最近7天的binlog,多余的会在重启或者刷新时自动删除。

客户那边的情况

客户在杭州市西湖区的摄影工作室里,平时主要拍婚纱照和个人写真,上传原片到网站上用于选片。照片文件本身就比较大,一张精修过的原图能有十几兆,所以磁盘空间本来就紧张,再被日志一占满,问题就暴露得更快。

电话跟客户说明了情况,他问了一句”以后会不会又满了”,我说这次配置好轮转之后,日志会定期自动清理,不会再像之前那样无限制增长。他听完就放心了。

还发现了一个问题

在排查日志的时候,看到nginx错误日志里反复出现一条记录:

PHP Warning: opcache_get_status(): opcache is disabled

这个客户的服务器上跑着WordPress,opcache没开。打开php.ini,启用opcache,配置了几个基本参数:

opcache.enable=1
opcache.memory_consumption=128
opcache.max_accelerated_files=4000

配置完重启php-fpm之后再观察,页面加载速度提升了不少,原来2秒多才能打开的页面现在不到1秒。这个属于意外收获。

半个月后

半个月后客户在微信上主动发消息说,服务器一直挺稳定,没有再出现无法上传的问题。还问了一句”到时候备用的图片空间怎么办”,我说可以加一块云存储挂载上去,或者把老照片定期归档到冷存储里,目前空间够用,等快满了再考虑扩容也行。

磁盘满了这种问题,看着不大,但影响很直接。网站一不能上传东西,前台功能就不完整了。提前做好日志轮转和空间监控,不至于等到塞满了再手忙脚乱地清理。

如果你也遇到类似的磁盘满了或者网站上传报错的问题,可以自己检查一下日志目录大小。如果不清楚怎么配置轮转,或者想顺便给服务器做一次全面检查,随时联系我们。

收藏 (0) 打赏

感谢您的支持,我会继续努力的!

打开微信/支付宝扫一扫,即可进行扫码打赏哦,分享从这里开始,精彩与您同在
点赞 (0)

本站仅提供信息存储空间服务,所有资源均由注册用户上传,仅供学习参考,知识产权归属原作者所有。本站不保证内容的准确性、真实性和可靠性,因信赖任何信息而产生的风险由使用者自行承担。因线路故障、黑客攻击、病毒侵入等不可抗力造成的损失,本站不负任何责任。链接推荐的第三方网站内容,本站不保证其真实性、合法性,由此造成的损失由使用者自行承担。未经本站许可,不得盗链、盗用或仿造本站资源,否则本站保留追责权利。如有侵权,请联系我们,本站将在核实后三个工作日内处理。

大师邦 IT专栏 服务器磁盘满了,网站报错无法上传图片,清理后发现是日志没轮转 https://www.dashibang.com/archives/365

常见问题
  • 不能。本站资源仅供学习参考,请勿直接商用。因商用引起的版权纠纷,责任由使用者自行承担。介绍文章中的示例图片、字体通常不包含在下载包内,需另行购买。
查看详情
  • 多数是下载不完整,对比文件大小与网盘显示容量是否一致。建议用百度网盘软件或迅雷下载,不要用浏览器直接下载。排除后仍有问题,可联系客服。
查看详情
  • 联系客服并提供付款信息,客服会为您处理。
查看详情
  • 属虚拟商品,具有可复制性,一旦交付原则上不接受退款。 通常可退款:商品无法安装、与描述严重不符、重复扣款。 通常不退:因个人原因不想要了、已被下载或激活使用、环境不兼容、超出申请期限。 建议付款前仔细阅读商品说明,确认是您需要的资源再下单。
查看详情
  • 通过官网在线客服、底部“联系我们”页面提交工单,或发邮件至官方邮箱。提交时附上订单号和问题截图。
查看详情
  • 联系我们客服,我们会安排人专门处理,留好联系方式,找到第一时间通知您!
查看详情

相关文章

评论
暂无评论
在线客服

为您解决烦忧 - 工作时间 第一时间解决