2018/03/26
たいがいのレンタルサーバーはCRONという機能が使えるようですが、
僕が使っているさくらのスタンダードプランでも、5つまでCRONが使えるようです。
今回、初めて使ってみました。
自分の用途は、1日に一回、決まった時刻にRSSを取りに行ってXMLファイルに保存するというもの。
WordPressにもwp_cronがあるそうですが、擬似cronと言われるもので、正確な時刻で動かないそうだ。
サイトにアクセスがあった時に、約束の時刻が過ぎている事に気がついて動きだすらしい。
自分で起きられない、うちの息子のようなやつだな😂
以前から、自動バックアップログの時刻がどうしてこんなにズレているんだろうと思ってたんだけど、そういう理由だったんだ。
そういうわけで正確な時刻で動かしたい場合には、サーバーのCRONを使った方が良さそうです。
今回参考になったサイト
sponsored link
使い方メモ
1.予約実行させるPHPファイルを用意する
ローカルパソコンで動作確認しておきました。
2.実行PHPファイルをFTPでアップロード
自分の場合は、子テーマフォルダに入れてみました。
3.さくらのコントロールパネルで設定
そして次の画面の「実行コマンド」の書き方でとまどった。
設定出来なかった書き方
cd/home/(さくらのアカウント名)/www/(ディレクトリ名); /usr/local/bin/php test.php
「入力内容に問題のある項目があります。」と画面に出て登録されない。
設定出来たが、動かなかった
/usr/local/bin/php /home/(sakura.ne.jpの前のドメイン名)/www/(WPをインストールしているフォルダ名)/wp-content/themes/(子テーマフォルダ名)/test.php
ネットで色々見て、書き方変えてみたら、設定出来た!
しかし、設定時刻過ぎても動いた形跡が無い😩
フォルダやファイルの権限かも?といろいろやったがダメだった!
やっと動いた!これが正解
cd /home/(さくらのアカウント名)/www/(ディレクトリ名); /usr/local/bin/php test.php
いろいろやって、最初の設定に戻ってきた!
結局、最初に入れたコマンドで良くて、cdの前のスペースが抜けていただけだった!
アホ過ぎてすみません!🙇
後は、動作時刻を設定
*は、毎回という意味で使っているようです。
「曜日」のところは、毎日動かす予定でも、全てのチェックは不要でした。
4.動作確認
とりあえず、数分後に時間設定してみる。
指定時刻が過ぎてFTPソフトで確認してみたら見事、xmlファイルが出来てました!成功!
とあるので、実行するプログラムは慎重にテストしておいた方が良いですね😄