溫馨提示×

Ubuntu PHP日志輪轉配置

小樊
32
2025-07-06 23:37:29
欄目: 編程語言

在Ubuntu系統中,PHP日志輪轉通常是通過logrotate工具來實現的。logrotate是一個用于管理日志文件的實用程序,它可以自動壓縮、刪除和郵件通知日志文件。要配置PHP日志輪轉,請按照以下步驟操作:

  1. 確保已安裝logrotate。在大多數Ubuntu版本中,logrotate已經預裝。如果沒有安裝,可以使用以下命令安裝:

    sudo apt-get update
    sudo apt-get install logrotate
    
  2. 創建一個新的logrotate配置文件。在/etc/logrotate.d/目錄下創建一個新文件,例如php-fpm

    sudo nano /etc/logrotate.d/php-fpm
    
  3. 將以下內容粘貼到新創建的配置文件中,然后根據需要進行修改:

    /var/log/php-fpm/*.log {
        daily
        missingok
        rotate 7
        compress
        notifempty
        create 0640 www-data adm
        sharedscripts
        postrotate
            if [ -f /var/run/php-fpm/php-fpm.pid ]; then
                sudo kill -USR2 `cat /var/run/php-fpm/php-fpm.pid`
            fi
        endscript
    }
    

    這個配置文件的解釋如下:

    • /var/log/php-fpm/*.log:指定要輪轉的日志文件路徑。
    • daily:每天輪轉一次日志文件。
    • missingok:如果日志文件不存在,不會產生錯誤。
    • rotate 7:保留7個輪轉后的日志文件。
    • compress:壓縮輪轉后的日志文件。
    • notifempty:如果日志文件為空,則不進行輪轉。
    • create 0640 www-data adm:創建新的日志文件,權限為0640,屬主為www-data,屬組為adm。
    • sharedscripts:如果有多個日志文件,只執行一次postrotate腳本。
    • postrotate:輪轉后執行的腳本。這里我們向PHP-FPM發送USR2信號,通知它重新打開日志文件。
  4. 保存并關閉配置文件。

  5. 測試logrotate配置是否正確。運行以下命令:

    sudo logrotate -f /etc/logrotate.d/php-fpm
    

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

現在,logrotate將按照配置文件中的設置自動輪轉PHP日志文件。如果你想要立即輪轉日志文件,可以再次運行sudo logrotate -f /etc/logrotate.d/php-fpm命令。

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