CentOS上Nginx日志管理:按天保存与自动清理30天前记录
51 浏览量
更新于2024-08-29
收藏 59KB PDF 举报
本文主要介绍了如何在 CentOS 操作系统上配置 Nginx 服务器,以便自动管理和删除指定天数之前的访问日志记录。涉及到的站点包括 bbs.jb51.net 和 sns.jb51.net,Nginx 安装路径位于 `/usr/local/nginx`,配置文件位于 `/usr/local/nginx/conf/nginx.conf`,而各站点的配置文件分别位于 `/usr/local/nginx/conf/vhost` 目录下。目标是将两个站点的访问日志按天存储,并且仅保留最近30天的日志。
具体操作步骤如下:
1. 创建日志存放路径
首先,需要创建专门用于存放日志的目录,分别为:
- 站点1日志路径:`/usr/local/nginx/logs/nginx_logs/bbs_logs`
- 站点2日志路径:`/usr/local/nginx/logs/nginx_logs/sns_logs`
使用 `mkdir -p` 命令创建这些目录,确保路径存在。
2. 设置 Nginx 日志记录格式
接下来,我们需要编辑 Nginx 的主配置文件 `/usr/local/nginx/conf/nginx.conf`。在文件中找到 `log_format` 部分,取消默认的日志格式注释,或者根据需要自定义一个新的日志格式。这里已经提供了一个示例的日志格式,包括客户端 IP、用户、时间戳、请求、状态码、发送的字节数、引荐页面、用户代理以及其它相关信息。
3. 配置日志路径
在每个站点的配置文件(`bbs.jb51.net.conf` 和 `sns.jb51.net.conf`)中,指定日志文件的路径。例如,对于站点1,将日志路径设置为 `/usr/local/nginx/logs/nginx_logs/bbs_logs/access.log`,对于站点2,设置为 `/usr/local/nginx/logs/nginx_logs/sns_logs/access.log`。
4. 配置日志轮换和清理
要实现按天保存日志并删除旧日志,可以使用 `logrotate` 工具。首先,创建一个 `logrotate` 配置文件,如 `/etc/logrotate.d/nginx`,并在其中添加以下内容:
```
/usr/local/nginx/logs/nginx_logs/*.log {
daily
rotate 30
compress
delaycompress
missingok
notifempty
create 640 nginx nginx
}
```
这段配置表示日志每天轮换一次,保留30个旧日志文件,使用gzip压缩,延迟压缩以避免在处理时文件仍被写入,即使日志文件不存在也无错误提示,且在轮换后创建新的空日志文件,权限设为640,属主和组为`nginx`。
5. 启用并测试配置
保存并关闭所有配置文件后,使用 `nginx -t` 命令检查配置文件是否有语法错误,如果无误,使用 `nginx -s reload` 重新加载 Nginx 配置。然后,运行 `logrotate -d /etc/logrotate.d/nginx` 测试日志轮换配置,确认配置无误。
通过以上步骤,你就可以实现 Nginx 访问日志的自动管理,每天生成新的日志文件,并在30天后自动删除旧的日志文件,保持日志存储的整洁和高效。
2021-01-20 上传
2014-01-25 上传
2020-09-30 上传
2020-09-15 上传
2020-09-30 上传
2020-09-15 上传
2020-09-15 上传
2021-09-16 上传
2021-04-16 上传
weixin_38550459
- 粉丝: 4
- 资源: 956
最新资源
- SSM动力电池数据管理系统源码及数据库详解
- R语言桑基图绘制与SCI图输入文件代码分析
- Linux下Sakagari Hurricane翻译工作:cpktools的使用教程
- prettybench: 让 Go 基准测试结果更易读
- Python官方文档查询库,提升开发效率与时间节约
- 基于Django的Python就业系统毕设源码
- 高并发下的SpringBoot与Nginx+Redis会话共享解决方案
- 构建问答游戏:Node.js与Express.js实战教程
- MATLAB在旅行商问题中的应用与优化方法研究
- OMAPL138 DSP平台UPP接口编程实践
- 杰克逊维尔非营利地基工程的VMS项目介绍
- 宠物猫企业网站模板PHP源码下载
- 52简易计算器源码解析与下载指南
- 探索Node.js v6.2.1 - 事件驱动的高性能Web服务器环境
- 找回WinSCP密码的神器:winscppasswd工具介绍
- xctools:解析Xcode命令行工具输出的Ruby库