KUSANAGI MAGAZINEで「きもおたわーどぷれす。」が紹介されました! クリックで公式サイトが開きます。

KUSANAGIでwp-cron.phpを停止してOSで制御することでパフォーマンスとセキュリティの改善を図る【KUSANAGI9対応・初心者向け】

この記事は約3分で読めます。
記事内に広告が含まれています。

cronは、あるコマンドを設定したスケジュール(時間)に従って実行してくれるコマンドです。
ざっくり言うと、

タイマーだよ

cronにはWordPress上で動くWP-cronとUNIX系OSのcronがあります。
KUSANAGIのCentOSもUNIX系OSの一つであり、後者のcronが積まれています。
(以下、KUSANAGIのcronは単にcronとします)

WP-cronは予約投稿やプラグインの自動更新に使われる便利な機能です。
しかし一方で、サイトアクセスがある毎に作動するためパフォーマンスに悪影響を及ぼします。
また、
サイト攻撃で狙われやすい対象でもあります。
よって対策しておくに越したことはありません。

本稿ではKUSANAGIでWp-cronを停止してパフォーマンスとセキュリティの改善を図ります。

スポンサーリンク

wp-cron.phpを停止する

wp-config.phpに次の記述をします。

define('DISABLE_WP_CRON', 'true');

試しに投稿予約をしてテスト投稿してみてください。
時間が過ぎても予約投稿が失敗しているはずです。

スポンサーリンク

crontabを編集してwp-cron.phpを定期的に叩く

しかしこのままでは投稿予約その他ができなくなってしまいます。
この点、

予約した時間が過ぎてしまっていても、wp-cron.phpを動かせばその時点でタスクが実行されます

なのでOSのcronを利用してwp-cron.phpを定期実行します。
具体的にはcrontabを編集します。

ターミナルにログイン。
次のコマンドを入力します。

# crontab -e

編集画面が開きます。
KUSANAGIの場合、恐らく次の記述がされていると思います。

07 03 * * 0 /opt/kusanagi/bin/kusanagi update cert

この下に次の記述を追加します。

*/10 * * * * /usr/local/bin/php -q /home/kusanagi/【プロファイル名】/DocumentRoot/wp-cron.php > /dev/null 2>&1

以下、最小限必要な説明のみさせていただきます。

「*/10」は「10分ごと」の意味です。
ここを「10」にすると「毎時10分」になります。

御自身の用途に応じて変更してください。
今回の目的ですと左端と左から2番目までしか使わないでしょうから説明はそこまでにとどめます。
設定できる数字はそれぞれ「0-59」と「0-23」です。

crontabにはユーザー名オプションもありますが今回は不要です。

/dev/null 2>&1

これはログ出力。
エラー出力を標準出力ファイルにマージします(まとめます)。

編集画面を閉じてcronを再起動します。

systemctl restart crond.service

今回設定したファイルは次の場所にあります。

/var/spool/cron
スポンサーリンク

cronの動作確認・テスト

予約投稿テスト

テスト投稿を作成します。
適当に投稿予約の設定をして、cronで設定した間隔の時間がすぎるまで待ちます。

(例)10分おきに設定した場合
13時12分に記事を書く
→13時15分に投稿予約
→13時18分に予約失敗しているのを確認
→13時22分に「公開済み」になっているのを確認

ログの確認

ログからcronが動いているか確認します。

less +F /var/log/cron

動いていれば設定した時刻に「CMD」「CMDEND」が表示されています。

「less +F」はログを見るコマンド。
もっと知りたければこちらを御覧ください。

tail -fやtailfを使うのはやめてless +Fを使おう - Qiita
tail データの末尾を見たい場合はtailを使い、 更新されたデータをリアルタイムに見たい場合はtail -fを使います。 「tail -fは情弱なのでtai...
スポンサーリンク

参考記事

【CentOS7】cronの設定方法

cron の設定とか簡易メモ

【Ubuntu】cronでsudoを実行するにはどうすれば。

スポンサーリンク

まとめ

めんどくさい……

でもKUSANAGI使うのはパフォーマンス求めてのはず
だったらやれることはやった方がいいと思うわ

 

サイトを始めたい・引っ越したい方へ

おすすめレンタルサーバー「ConoHa WING」
Webサーバー処理速度 国内最速!
サイト管理・カスタマイズのタイパも抜群!
自動化AIのWEXALによって他社より負担を減らせます
各種キャンペーン施策によりコスパも抜群!
ConoHaに初めて入会かつ12か月以上のWINGパックなら
下のボタン経由で契約すると最大5000円の割引が受けられます

この記事を書いた人

素人の備忘録です。
素人がゆえにトラブルにぶつかりまくってきたので、同じように困った方の役に立てたらいいなと思ってます。
8年来のKUSANAGI推し。

元公安調査庁職員、発達障害(ADHD)

天満川 鈴をフォローする
KUSANAGI・WEXAL

This website stores cookies on your computer. These cookies are used to provide a more personalized experience and to track your whereabouts around our website in compliance with the European General Data Protection Regulation. If you decide to to opt-out of any future tracking, a cookie will be setup in your browser to remember this choice for one year.

Accept or Deny

タイトルとURLをコピーしました