在Ubuntu系統中,PHP日志輪轉通常是通過logrotate
工具來實現的。以下是設置PHP日志輪轉的步驟:
確保logrotate
已安裝:
大多數Ubuntu版本默認已經安裝了logrotate
。如果沒有安裝,可以通過以下命令安裝:
sudo apt-get update
sudo apt-get install logrotate
創建或編輯logrotate
配置文件:
logrotate
的配置文件通常位于/etc/logrotate.d/
目錄下。你可以為PHP-FPM或Apache等不同的服務創建單獨的配置文件,或者編輯通用的配置文件。
例如,為PHP-FPM創建一個配置文件:
sudo nano /etc/logrotate.d/php-fpm
添加以下內容到配置文件中:
/var/log/php-fpm/*.log {
daily
missingok
rotate 7
compress
notifempty
create 0640 www-data adm
}
這里的配置項解釋如下:
daily
: 每天輪轉日志。missingok
: 如果日志文件丟失,不要報錯。rotate 7
: 保留7個輪轉日志文件。compress
: 輪轉后的日志文件進行壓縮。notifempty
: 如果日志文件為空,則不輪轉。create 0640 www-data adm
: 輪轉后創建新的日志文件,權限為0640,屬主為www-data,屬組為adm。保存并關閉配置文件。
測試logrotate
配置:
你可以使用以下命令測試logrotate
配置是否正確:
sudo logrotate -f /etc/logrotate.d/php-fpm
這個命令會強制執行一次日志輪轉,-f
選項表示強制輪轉。
設置定時任務:
logrotate
通常通過系統的cron任務自動運行。你可以檢查/etc/cron.daily/
目錄下是否有logrotate
的腳本:
ls /etc/cron.daily/logrotate
如果有,說明logrotate
每天都會自動運行一次。如果沒有,你可以手動創建一個符號鏈接:
sudo ln -s /etc/logrotate.conf /etc/cron.daily/logrotate
通過以上步驟,你就可以成功設置Ubuntu系統中的PHP日志輪轉。根據你的具體需求,可以調整配置文件中的參數。