本文へスキップ
ドキュメント

ユーザーガイド

定期実行(Crontab)

サイトを運営していると、退会した会員の情報、削除された写真のサムネイル、古い通知などの不要なデータがたまります。定期実行(Crontab)を設定すると自動で整理され、ディスク容量とパフォーマンスを守ることができます。

個人サーバー(SSH 接続可能)専用です。Web ホスティングでは、業者が cron 機能を提供している場合に限り、同じコマンドを登録できます。

実行形式

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

インストールパスで PHP CLI から実行します。Web アドレスで呼び出す方式(Web 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

注意事項

  • Web サーバーと同じアカウントで実行してください(www-data など)。root の crontab に登録すると、生成されるファイルの所有者がずれて Web からアクセスできなくなります。crontab -e -u www-data でそのアカウントに登録できます。
  • 登録後、files/cron.log で正常に動作しているか確認してください。
  • Linux サーバーを前提としています。Windows サーバーではタスクスケジューラで同じコマンドを登録します。