デモ環境

※atsu666/acms:8.1はcronが使えないので拡張しています。

※サーバーOSの知識が必要です。

※デモで少しだけデータベース操作がでてきます。 ※GitHubはこちら

cronとは

Linuxに備わっているプログラムの一種。 バックアップ処理やメンテナンスなど、定期的にプログラムを実行する際に利用される。

cronの設定

* *** *** *** *** *root* */var/www/html/cron/example.sh

# --------------------------------
# 分 時 日 月 曜日 ユーザー コマンド
# 
# ※曜日は0〜7で、0または7が日曜日
# ※全てアスタリスクにすると1分毎になる
# 
# ※ユーザーはサーバーOSでの実行ユーザー
# --------------------------------*

※cronの時間は、設定してからカウントではなく、日時で管理されています。

a-blog cmsではどう使われているか

<aside> 💡 exampleの動作を見てみる/説明

  1. cronからシェルファイル(example.sh)を通して、example.phpを動作させている
  2. standalone実装内でAcmsLogger::warning('standalone実装') を確認
  3. standalone実装なしも確認 </aside>

ポイントstandalone実装

  1. cronで時間実行ユーザー実行コマンドを設定する
  2. シェルスクリプトで、実行されるPHPの実行ファイルを指示