Apache-2.2
logrotate 不工作。這個配置正確嗎?
/var/log/apache2/*.log { daily missingok rotate 31 compress delaycompress notifempty create 640 root adm sharedscripts postrotate if [ -f "`. /etc/apache2/envvars ; echo ${APACHE_PID_FILE:-/var/run/apache2.pid}`" ]; then /etc/init.d/apache2 reload > /dev/null fi endscript } /home/admin/public_html/mywebsite.com/log/*.log { daily missingok rotate 31 compress delaycompress missingok # notifempty # create 640 root adm sharedscripts postrotate if [ -f "`. /etc/apache2/envvars ; echo ${APACHE_PID_FILE:-/var/run/apache2.pid}`" ]; then /etc/init.d/apache2 reload > /dev/null fi endscript }
這是
apache2
文件的確切內容,減去假域名)。當我在 2 天后重新登錄伺服器
access.log
時mywebsite.com/log
,仍然是多個演出。這可能只是一個
chmod
問題嗎?(我在問題中留下了註釋掉的行,以防萬一它們成為問題。
嘗試合併兩個文件列表。
/var/log/apache2/*.log /home/admin/public_html/mywebsite.com/log/*.log{ daily missingok rotate 31 compress delaycompress notifempty create 640 root adm sharedscripts postrotate if [ -f "`. /etc/apache2/envvars ; echo ${APACHE_PID_FILE:-/var/run/apache2.pid}`" ]; then /etc/init.d/apache2 reload > /dev/null fi endscript
}
logrotate 有一個非常有用的手冊頁。例如,您可以在空執行模式下執行它,然後 logrotate 會告訴您它被配置為做什麼,而無需實際執行。