さくらサーバ(さくらのレンタルサーバ)でcronを使ってPHPを定時実行する
さくらのレンタルサーバで、PHPを決まった時間に定期的に実行する方法です。
サーバコントロールパネルにログインします。
https://secure.sakura.ad.jp/rs/cp/
CRON設定画面を開きます。
https://secure.sakura.ad.jp/rs/cp/script/cron/list
「スケジュール追加」ボタンを押します。
ここで実行時間などを登録して、CRONの設定をします。
実行コマンド
実行日時
PHPを実行するときは、phpコマンドは絶対パスで書きます。
/usr/local/bin/php
/usr/local/bin/php 【実行するphpファイル】
コード内に相対パスで記述されたコードが書かれているときには、phpコマンドの前にcdを指定します。
cd /home/【ユーザ名】; /usr/local/bin/php /home/【ユーザ名】/【実行するphpファイル】
これだけだと実行したときの標準出力がメールで飛びます。
コマンドの標準出力をメールで送信したくない場合は、
1> /dev/null
を実行コマンドの最後に付けます。
アカウント:hoge
実行するPHP:/home/hoge/foo.php
だと
cd /home/hoge; /usr/local/bin/php /home/hoge/foo.php 1> /dev/null
この設定は、サーバにSSHでログインしてcrontabコマンドで設定・確認することもできます。
% crontab -l 35 4 * * 0,1,2,3,4,5,6 cd /home/hoge; /usr/local/bin/php /home/hoge/foo.php 1> /dev/null
スポンサーリンク
関連記事
- SSHで初めて接続するホストで、接続するかどうかyes/noを聞かれないようにする
- 数日おきに設定したcronの実行が1日ずれる理由
- シェル実行などでSSHキーを読めない場合
- データベースを定時バックアップする方法(毎日バックアップする処理)
- cron実行時の標準出力のメールを飛ばさない方法(cron実行時に毎回メールを飛ばさない)
- cron実行時のPATHなどの環境変数を確認する方法
- cronのメール送信先を指定する方法(cronごとに送信先のメールアドレスを指定する方法)
- cron実行時に『/bin/sh: 〜〜: command not found』と出てcronが実行されない場合
- 『crontab -r』でcronの設定を間違って消してしまった場合の対処法
- cronを実行すると『TERM environment variable not set.』というエラーメールが飛ぶ
- PHP
- Linux [Red Hat/CentOSなど]
- Fail2ban ログを集計して不正アクセスを防ぐ
- HEADリクエストを排除してサーバ負荷を軽減させる
- Firefox、Chromeなどで文字化けを防ぐ方法 ヘッダー情報に文字コードを指定
- named.ca [Bindの設定ファイル]のデフォルト
- CPUやストレージの温度を調べる方法(CPU HDD SSD NVMe)
- named.local [Bindの設定ファイル]のデフォルト
- iusリポジトリで公開されているパッケージの一覧
- 複雑なExcelファイルをプログラムで作成する方法
- Deprecatedエラーを消す方法 (php.iniや.htaccess)
- file_get_contentsで$http_response_headerを使用するときの注意点
- WgetがFTPでダウンロードできない場合
- Zend Serverとは
- phpBugTracker [バグ追跡システム]
- facebook APIを使用する時にfacebook Appsでアプリを登録するまでの流れ
- eGroupWare [バグ追跡システム]
- Cactiのインストール RRDToolを利用したサーバ監視ツール
- Mantis(マンティス) バグ管理システム
- switch文とif文の違い
- PostgreSQLのインストール
- stdClassクラスとは
スポンサーリンク