跳到主要內容
文件

使用者指南

排程作業(Crontab)

網站營運一段時間後,會累積已退出會員的資訊、已刪除相片的縮圖、過期的通知等不必要的資料。設定排程作業(Crontab)後即可自動清理,維護磁碟空間與效能。

僅適用於自有伺服器(可透過 SSH 連線)。虛擬主機只有在主機商提供 cron 功能時,才能註冊相同的指令。

執行格式

php index.php 모듈명.스크립트명 [변수]

在安裝路徑中以 PHP CLI 執行。不支援以網址呼叫的方式(網頁 cron)。

提供的清理腳本

指令作用預設基準
file.cleanGarbageFiles清理未連結到文章的附件10 天
file.cleanThumbnails刪除過期的縮圖90 天
file.cleanEmptyDirs移除空資料夾-
module.cleanMiscLogs刪除過期的記錄30 天
ncenterlite.cleanNotifications移除過期的通知-

crontab 註冊範例

以 crontab -e 編輯。建議在凌晨時段每隔幾分鐘依序執行,以避免負載過高。

5  5 * * * cd /var/www/mysite && php index.php file.cleanGarbageFiles
10 5 * * * cd /var/www/mysite && php index.php file.cleanThumbnails
15 5 * * * cd /var/www/mysite && php index.php module.cleanMiscLogs
20 5 * * * cd /var/www/mysite && php index.php ncenterlite.cleanNotifications

注意事項

  • 請以與網頁伺服器相同的帳號執行(www-data 等)。若註冊在 root 的 crontab 中,產生的檔案擁有者會不一致,導致網頁無法存取。可用 crontab -e -u www-data 註冊到該帳號。
  • 註冊後請在 files/cron.log 中確認是否正常運作。
  • 以上以 Linux 伺服器為準。Windows 伺服器請以工作排程器註冊相同的指令。