「cron」タグアーカイブ

さくらインターネットでcronを設定する方法


さくらインターネットでcron(クロン)を設定する方法を纏めます。

この解説を読めば馬鹿でもcron設定を簡単にさくらインターネットで行えるようになります。

1.サーバコントロールにログインする。

2.アプリケーションの設定 > CRONの設定 をクリックする。

3.実行コマンドに次の様に指定する。

/usr/local/bin/php /home/{user_name}/cake/app/Console/cake.php XXX_CLASS XXX_FUNCTION HIKISUU -app /home/{user_name}/apps/xxx1>/dev/null

cronの設定

 

 

 

cron設定の例

cd /home/{user_name}/apps/{hoge_directory}/Cron; /usr/local/bin/php test.php 1>/dev/null

cdコマンドでphpのあるパスまで移動し、対象PHPを実行する。

 


さくらインターネット等のレンタルサーバ上でPHPのインストールされている場所を調べるには?


レンタルサーバを契約した時にcronからphpを実行させる為に、phpのインストールされている場所を調べたい場合があります。

その場合には

whereis php

を実行すればphpのインストールされた場所が表示されます。

実行すると

php: /usr/local/bin/php

という風にインストール場所が表示されます。

whereis


サーバ博士でcronを設定する方法


サーバ博士で実際にcron設定を行った時のメモです。

サーバ博士ははっきりいって重たいです。WinSCPでファイル操作をする度にフリーズします。同じ価格であればやはりさくらインターネットの方が無難です。

サーバ博士は本当によく落ちるので使い辛いです。他のサーバを強くおすすめします。

cronの設定方法とかが各サーバ会社で統一されれば良いんですけどね。使い勝手がサーバ会社によって現状ではまちまちで使い辛いです。サーバ博士の場合、cronを実行する為にはシェルを用意してシェル経由でphpをキックする必要があります。

サーバ博士でcronを設定した時の手順です。

 

1.サーバ博士のPLESK10にログインする。

2.メニュー > ウェブサイトとドメインをクリック

3.高度なオペレーションを表示する。

server-doctor-2

 

 

4.スケジュール済みタスクをクリックする。

server-doctor-3

 

5.ユーザ名が一覧表示されるのでクリックする。

server-doctor-4

 

6.新しいタスクをスケジュールするをクリックする。

 

7.実行間隔を指定する。

ここでは、毎時30分に設定する様に設定しています。

*を入力すると毎時・毎分という意味になります。

server-doctor-5

 

 

8.シェルをキックするコマンドを指定します。

ここでは、 /httpdocs/hoge_user/kick_test.sh と指定しました。

 

kick_test.shの中身

#!/bin/sh

#PHP

/httpdocs/hoge_user/dummy.php

exit

この時に
kick_test.sh
dummy.php

 

の2つを必ず755の権限を与えておきましょう。そうしないとパーミッションエラーが出ます。WinSCP上からサーバ博士のサーバ上のシェル権限を変更としましたが、サーバ接続が何度も寸断されなかなか出来ませんでした。ユーザを片っ端から詰め込んで運用していのでしょうか。非常に重たいです。また、凄い頻度でサーバ博士は接続が切れます。安定運用であればさくらインターネットの方が良いかもしれません。

ただし、さくらインターネットはサポートがアホ過ぎます。難しいところですね。

 

9.cron(クーロン)が実行された場合に、メールを通知する様に設定します。 設定 > スケジューラ通知 > 指定したメールアドレスに送信 > OK

server-doctor-7


bluehostでcronを設定するには?


海外のレンタルサーバbluehostでcronを設定する方法です。

日本のサーバの設定情報は色々なホームページに纏められていますが、こういった海外でメジャーなレンタルサーバの情報があまり公開されていないのは残念なので自分用の備忘録として纏めます。

bluehostでcronを設定する手順

 

1.bluehostにログインする。

2.cpanelをクリックする。

3.advanced > Cron jobs をクリックする。

bluehost-1

4. cron実行間隔をプルダウンより選択する

この画像の例では、 毎時30分にcronが走る様に設定しています。

ただし、bluehostはアメリカ時刻なので日本とは時刻が違います。

bluehost-2

 

5.Command:   に実行するスクリプトまでのパスを指定します。

指定例)

php /homeX1/X2/public_html/hoge_directory/hoge.php     

 

WinSCPで確認すると作成したスクリプトまでのパスは次の様に見えます。

/public_html/hoge_directory/hoge.php

しかし、cronで指定をする際には「/public_html」の左側のパスも含めてパス指定する必要があります。

メニュー > ftp > Directory の部分にパスがあるのでそれを使います。

/homeX1/X2 と /public_html/hoge_directory/hoge.php をマージして

/homeX1/X2/public_html/hoge_directory/hoge.php をcronに指定する流れです。

 

bluehost-3

cronで直接phpを実行できるのは便利で良いですね。日本のvalue serverとかphpをcronで実行しようとするとシェルをcronから叩く必要があり面倒です。bluehostはオススメのサーバです。

 

 


Value Server.com Control Panel上でcron(クーロン)を実行させるには?


普段はさくらインターネットを使っているのですがたまには違うサーバも使ってみようと思ってValue Serverをレンタルしてみました。

Value Serverでcron設定するのは、少しやり辛いです。

さくらインターネットでのcronタブよりわかり辛いのと、 Value-Server.com Control PanelのUIが分かり辛い為です。

 

Value ServerでCron設定する手順

1.Value-Server.com Control Panelにログインする。

2.左メニュー > お役立ちツールをクリックする。

3.プルダウン表示されるのでその中から

CRONジョブの設定・編集をクリックする。

vs-1

 

 

4.CRONジョブの設定・編集画面が表示されるのでその中に記述します。

毎時、毎日、を設定する場合には「*」を指定します。

以下の例では毎時 30分に cronが走る様に設定しています。

 

value-server-1

 

コマンドの指定は、以下の様にします。 赤文字部分を自分で記述する必要があります。public_htmlを記述してからシェル名を入力しないと動かないので注意してください。value serverの説明はざっくりしていて分かり辛いです。

/virtual/{user_name}/public_html/hogehoge.sh >/dev/null 2>&1

後ろに

>/dev/null 2>&1  を付ける事によりcron実行時の結果・エラーメールを破棄出来ます。届かない様に設定が出来ます。サーバ容量を消費してしまうので必ず設定しておきましょう。

5.シェル・スクリプトの実行権限を 755にします。

さくらインターネットでは特に手動で設定する必要がありませんでしたが、Value Serverは面倒な事に手動で実行権限を与えてやる必要があります。

WinSCPにログイン > 対象ファイルの上で右クリック > プロパティ(P)

vs-3

 

 

パーミッション(権限)を 0755   に設定します。

vs-4

 

 

hogehoge.shの中身

UTF-8で改行コードは、さくらエディタを使ってLFに統一をさせます。

#!/bin/sh

#PHP
/usr/local/bin/php /virtual/{user_name}/hoge-cron.php

exit

 

この手順を行えば、value server上でcronが正常に動作する様になります。


ロリポップのコロリプランでcron(クーロン)を実行するには?


ロリポップのコロリプランでcron(クーロン)を設定しました。

その時の例です。さくらインターネットとはcronの指定方法が若干違います。

 

cronの設定の仕方

 

1.管理画面にログインする。

2.WEBツールにフォーカスを当てる。

3.cron設定をクリックする。

loli

 

 

4.cronの設置を行う。

1) cronの設定名にクーロンの名前を付ける。

2) 実行したいタイミングをプルダウンより選択する。

3)  cron(クーロン)で実行したいスクリプトを指定する。

hoge.php を実行したい場合には、 hoge.phpのみ指定する。

loli-2

 

 

 

さくらインターネットよりもロリポップの方がクーロンの指定は簡単です。

ついでにさくらインターネットでのcronを指定する場合のコマンドは以下の通りです。

cd /home/{user_name}/www/{made_directory}; /usr/local/bin/php hogehoge.php 1> /dev/null