サイトで自動生成されているファイル(軽いテキストファイル)を指定時間にバックアップする。Perl の CGI で sendmailを使って、メールにファイルを添付させて自動的に送らせる。Cronを使えない場合で、アクセスが少ないサイトの場合。
ウェブページへのアクセスをトリガーにして送るようにします。
ですので、あまりアクセスの多いサイトでは使えません。
ページがロードしたら、CGIが動作するように仕掛けます。カウンタと同じ仕組みです。
ロードがトリガーなので多少のずれがあります。
たとえば21時になったら送信する場合、21時になったら21時の時間帯に一度だけ送信する、という仕組みです。
何度も送信しないで一回だけ送信させます。
#21時に送信するには……
#20時にタイマーセット……
if ($hour == 20) {$timeflag = 1;}
if ($timeflag) {
#21時になったら送信
if ($hour == 21) {&sendfiler;
#タイマーを元に戻しておく
$timeflag = 0;
}
}
&sendfiler はファイルを送信するサブルーチンと考えてください。
MIME::Base64::encodeを使ってEncodingをBase64にして送ります。
ネットでも方法がたくさん出てます。
指定時間を増やすこともできるでしょう。
if ($hour =~ /10|16|22/) {$timeflag = 1;}
if ($timeflag) {
if ($hour =~ /11|17|23/) {&sendfiler;
$timeflag = 0;
}
}
もっと簡単な方法があるかもしれません。ご容赦。