まず初めに
ヘテムルサーバでCakePHPのCronを実行する方法を紹介します。
なお、CakePHPは2系での紹介となります。
ヘテムルサーバではCronを設定することで利用可能ですが、CakePHPのCronを実行するルールとなる「APP」のパスやパラメータをサーバ設定画面(以下「コンパネ」)で設定すると
/usr/bin/php: bad interpreter: No such file or directory
と、このようなエラーになってしまいます。
どうやら、パラメータを渡すようなCron実行が出来ない仕組みのよう。。。
そこで、実際に解決する方法の紹介です。
①「cron.sh」ファイルを作成
まずはシェルスクリプトファイルを作成します。
ここに
#!/bin/sh
/usr/local/php7.1/bin/php (APPのフルパス)/Console/cake.php -app (APPのフルパス) cron (実行名)
上記のスクリプトを保存して、サーバの任意の場所にアスキーモードでアップロードします。
②パーミッションの変更
アップロードしたファイルのパーミッションを「700」に変更します。
③ヘテムルのコンパネでCron設定
アップロードしたファイルをCronの実行ファイルとして指定して設定を行う。
以上でCakePHPでもCronの実行が可能になります。
パラメータ渡しが出来ない旨が記載されていれば、迷わず済んだのかもしれない。。。