溫馨提示×

CentOS Nginx日志切割怎樣配置

小樊
32
2025-08-28 22:16:55
欄目: 智能運維

在 CentOS 系統中,Nginx 日志切割通常是通過 logrotate 工具來實現的。以下是配置 Nginx 日志切割的步驟:

  1. 確保 logrotate 已經安裝在你的 CentOS 系統上。如果沒有安裝,可以使用以下命令安裝:
sudo yum install logrotate
  1. 創建一個新的 logrotate 配置文件,用于配置 Nginx 日志切割。使用文本編輯器(如 vim)創建一個名為 nginx.conf 的文件:
sudo vim /etc/logrotate.d/nginx
  1. 將以下內容粘貼到 nginx.conf 文件中:
/var/log/nginx/*.log {
    daily
    missingok
    rotate 7
    compress
    notifempty
    create 0640 nginx adm
    sharedscripts
    postrotate
        if [ -f /var/run/nginx.pid ]; then
            kill -USR1 `cat /var/run/nginx.pid`
        fi
    endscript
}

這里的配置表示:

  • 每天切割日志文件(daily)
  • 如果日志文件丟失,不要報錯(missingok)
  • 保留最近 7 天的日志文件(rotate 7)
  • 切割后的日志文件進行壓縮(compress)
  • 如果日志文件為空,則不進行切割(notifempty)
  • 創建具有 0640 權限的新日志文件,屬主為 nginx,屬組為 adm(create 0640 nginx adm)
  • 在切割日志之前和之后執行的腳本(sharedscripts 和 postrotate)
  1. 保存并關閉 nginx.conf 文件。

  2. 測試 logrotate 配置是否正確:

sudo logrotate -f /etc/logrotate.d/nginx

如果沒有錯誤信息,說明配置正確。

現在,Nginx 日志切割已經配置好了。logrotate 會根據配置文件中的設置自動切割 Nginx 日志文件。你也可以手動觸發日志切割,使用以下命令:

sudo logrotate -f /etc/logrotate.d/nginx

這將強制執行 Nginx 日志切割,即使距離上次切割時間還很短。

0
亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女