Apache 目录结构中 logs 目录日志满了怎么清理

小枫吖_6583

小枫吖_6583

2026-07-23

299人浏览

原创

最稳妥做法是用 truncate 清空日志内容或配置 logrotate 自动轮转:sudo truncate -s 0 /var/log/apache2/access.log;编辑 /etc/logrotate.d/apache2 设置 daily、rotate 30、compress 等规则,并在 postrotate 中 reload apache,既释放空间又不中断服务、不丢失句柄。

apache 目录结构中 logs 目录日志满了怎么清理

Apache 的 logs 目录日志满了,最稳妥的做法不是直接删文件,而是清空内容或轮转归档——既释放磁盘空间,又不中断服务、不丢失当前日志句柄。

直接清空日志文件(推荐临时应急)
Apache 进程通常以追加方式写入 access.log 和 error.log,只要文件没被删除,进程仍能继续写。用 truncate 清空内容最安全:

  • sudo truncate -s 0 /var/log/apache2/access.log
  • sudo truncate -s 0 /var/log/apache2/error.log
    CentOS/RHEL 系统路径一般是 /var/log/httpd/,命令同理。
    ⚠️ 注意:不要用 > access.log 或 echo "" > access.log,可能因权限或 SELinux 导致写入失败;truncate 是原子操作,更可靠。

按时间自动清理旧日志(长期策略)
用 find 配合 cron 定期清理压缩过的旧日志(如 .log.1.gz, .log.2.gz):

# 删除90天前的归档日志(仅匹配带日期或数字后缀的压缩文件)
find /var/log/apache2 -type f -name "*.log.*.gz" -mtime +90 -delete

先加 -print 测试,确认匹配无误再加 -delete。

启用 logrotate 实现全自动轮转
编辑 /etc/logrotate.d/apache2(Ubuntu)或 /etc/logrotate.d/httpd(CentOS),确保包含:

  • daily 或 size 100M(按天或按大小触发)
  • rotate 30(保留30份)
  • compress(自动 gzip 压缩)
  • missingok(忽略缺失文件)
  • notifempty(空文件不轮转)
  • create 640 root adm(新建日志权限)
  • sharedscripts + postrotate ... systemctl reload apache2 ... endscript(重载配置,避免重启)

避免日志爆炸的源头优化

Apache Superset Dashboard and SQL Exploration Skill
Apache Superset Dashboard and SQL Exploration Skill

Apache Superset 是一个广泛采用的开源 BI 平台,用于 SQL 探索、图表构建和仪表板交付。当代理需要查询仓库数据、组装仪表板或使用成熟的分析界面解释指标而不是临时笔记本代码时,此技能非常有用。

下载
  • 关闭静态资源日志:在虚拟主机配置中加 SetEnvIf Request_URI "\.(css|js|png|jpg|gif|ico)$" no-log,再在 CustomLog 后加 env=!no-log
  • 精简日志格式:用 LogFormat "%h %t \"%r\" %>s %b" common 替代 combined,去掉 Referer、User-Agent 等冗余字段
  • 错误日志级别调高:LogLevel warn(默认是 warn,若设为 info 或 debug 会剧增日志量)

特别提醒

  • 不要 rm -f *.log —— Apache 可能仍在写入,删除后新日志会写到 inode 已释放的位置,导致磁盘空间不释放(lsof | grep deleted 可查)
  • 若已满且无法 truncate,可先 kill -USR1 $(cat /var/run/apache2.pid)(Linux)发送日志 reopen 信号,再清空

本质上,日志满不是“清理问题”,而是“管理缺位”。配好 logrotate + 优化日志粒度,比每次手动救火更省心。

相关文章

PHP速学视频免费教程(入门到精通)
PHP速学视频免费教程(入门到精通)

PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载

本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

相关专题

更多
服务器是什么
服务器是什么

服务器是一种计算机硬件设备或软件程序,它具有强大的计算和存储能力,用请求、存储数据和提供服务。它在互联网中着关重要的作用,为用户提供各种服务和资源。本专题为大家提供服务器相关的文章、下载、课程内容,供大家免费下载体验。

2023.08.15

457

5

连接apple id服务器时出错
连接apple id服务器时出错

连接apple id服务器时出错的原因包括网络连接问题、服务器问题、Apple ID账户问题、设备问题、防火墙或安全软件问题、时间和日期设置问题、Apple服务器维护等。本专题为大家提供apple id相关的文章、下载、课程内容,供大家免费下载体验。

2023.09.08

940

5

搭建互联网服务器
搭建互联网服务器

搭建互联网服务器需要:1、选择合适的硬件和操作系统,第一步是选择合适的硬件和操作系统;2、安装和配置操作系统,是搭建互联网服务器的关键步骤;3、安装和配置服务器软件,是搭建互联网服务器的下一步,常见的服务器软件包括Apache、Nginx、Tomcat等;4、配置防火墙和安全性,是搭建互联网服务器的重要步骤;5、域名解析和配置,是搭建互联网服务器的最后一步。

2023.09.19

3072

5

如何查看服务器状态
如何查看服务器状态

查看服务器状态的方法有使用命令行工具、图形界面工具、监控工具、日志文件和远程管理工具等。本专题为大家提供服务器状态相关的文章、下载、课程内容,供大家免费下载体验。

2023.10.09

1016

5

服务器域名转接慢怎么解决
服务器域名转接慢怎么解决

服务器域名转接慢的解决办法有DNS优化、服务器优化、CDN加速、前端优化和网络优化等。本专题为大家提供服务器相关的文章、下载、课程内容,供大家免费下载体验。

2023.10.17

909

5

服务器评测软件
服务器评测软件

服务器评测软件有PassMark Software、CPU-Z、GPU-Z、CrystalDiskMark、IOmeter、JMeter、LoadRunner、Apache Bench等等。详细介绍:1、PassMark Software是一款综合性的服务器性能测试软件,可以评估服务器在各种负载条件下的性能;2、CPU-Z是一款可以提供服务器CPU详细信息的软件等等。

2023.10.17

474

3

如何开启TFTP服务器
如何开启TFTP服务器

开启TFTP服务器的步骤包括选择TFTP服务器软件、下载和安装软件、配置TFTP服务器以及启动和测试服务器等。本专题为大家提供服务器相关的文章、下载、课程内容,供大家免费下载体验。

2023.10.18

2796

4

服务器负载不兼容怎么解决
服务器负载不兼容怎么解决

解决方法:1、增加服务器资源;2、负载均衡;3、优化应用程序;4、增加缓存机制;5、分布式架构;6、限流和熔断;7、自动化扩容。想知道更详细服务器负载不兼容的解决方法,可以访问本专题下面的文章。

2023.10.20

5212

4

宽带如何接入服务器
宽带如何接入服务器

宽带接入服务器的方法有ADSL宽带接入服务器、光纤接入服务器、无线接入服务器和以太网接入服务器等。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

2023.10.20

827

5

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
Apache Maven 官方安装指南
Apache Maven 官方安装指南

共0课时 | 0人学习

Apache Maven 官方用户中心
Apache Maven 官方用户中心

共0课时 | 0人学习

Apache Subversion 官方手册
Apache Subversion 官方手册

共0课时 | 0人学习