にしし ふぁくとりー(西村文宏 個人サイト)

Presented by Nishishi via Movable Type. Last Updated: 2016/12/25. 00:55:04.

指定時刻にウェブページを自動更新する方法

指定日時にページを自動更新する方法(cron編・CGI編)ウェブページを更新する際、あらかじめ指定した日時ぴったりに更新したいことがあります。例えば、企業サイト上で実施するキャンペーンを、午前0時から始めたい(または終わりたい)とか、何らかの結果発表を午前0時に公開したい、とか。

その時刻ちょうどに更新作業を行えれば良いですが、指定時刻ぴったりに作業するのは難しいでしょうし、よほどアクセスの多い(またはサーバが非力な)場合だと、FTPの反応が遅くて更新作業が進まない……という可能性もあります。(^_^;)

そんなときには、あらかじめ更新時刻を指定しておいて、自動で更新できると便利です。
最近のCMSツールならそういう機能が元々あったりしますが、自力でHTMLを書いている場合など、静的なウェブページで自動更新を実現するには、何らかの別手段が必要です。

そこでお勧めなのが、ウェブサーバのcron機能を使う方法。
指定の日時に「既存ページ」のファイルを「更新ページ」のファイルで上書きコピーするよう記述するだけです。1度やり方を覚えれば、いつでもどこでも指定日時に自動更新ができるようになります。

そんな、あらかじめ指定した日や時刻にウェブページを自動更新させる方法として、サーバ側のcron機能を使う方法と、CGIを使う方法の2種類を、All Aboutで解説しました。

指定日時にページを自動更新する方法(cron編・CGI編) (@All About ホームページ作成)

「夜中0時ぴったりに更新したい」といった際に、わざわざ作業時間を合わせずに済み便利です。
各方法の具体的な作業内容と、メリット・デメリットなども解説しています。
ぜひ、覗いてみて下さい。

コメント

こんにちは。いつも参考にさせていただいております。
今回ロリポップのサーバーでcronを設定してみたのですがいくらやっても「No such file or directory」となってしまいます。マルチドメインで利用しており、そのひとつのホームページを時間指定したいのですが、
『/home/users/1/lolipop.jp-xxxxxxaad6/web/ 以下のパスをご入力ください』
の以下にxxxxxドメイン名(.com)の前を入力してみました。

また、複数のページ(画像)だとしたら1つ1つ設定をする必要がありますか?

cron初めて使用なのでご指導よろしくお願いいたします。

投稿者 あみ : 2016年12月21日 10:36

あみさん、こんばんは。
ウェブサーバをマルチドメインで使用している場合、どのドメインがどのディレクトリに対応しているかは自由に決定できますので、必ずしもディレクトリ名がドメイン名と一致しているとは限りません。
どんなディレクトリ名になっているかは、FTPソフトなどでサーバの中を覗いて確認するしかありません。

例えば、ウェブサイトを更新する際に、FTPソフトでファイルをアップロードする先が /mywebsite というパスなのであれば、 /home/users/1/lolipop.jp-xxxxxxaad6/web/mywebsite/ を指定することになります。
ロリポップは(たぶん)サーバのフルパスがFTPソフトでは確認できないっぽいので、やや手間ですね。

この記事で解説している方法の場合、書き換えたいファイルの個数だけコマンドをcronに登録する必要があります。
(あまりにも多い場合はシェルスクリプトに記述しておいて、cronではそのスクリプトを起動させるだけにする方が良いとは思います。)

投稿者 にしし : 2016年12月25日 00:54

コメント数: 2件

コメント投稿欄 この日記に対するコメント投稿を歓迎します。

保存しますか?



※本文中にURLは書けません。(書くと投稿が拒否されますのでご注意下さい。)

※投稿内容は、実際にページ上に掲載される前に、管理者によって確認される設定にしている場合があります。その場合は、投稿後にその旨が表示されます。たいてい1~2日以内には表示されるはずですので、気長にお待ち願います。m(_ _)m

トラックバック

このエントリーへのトラックバックURLを表示するにはここをクリック
※スパム防止のため、トラックバックURLは別ウインドウで表示します。(JavaScriptが有効でないと表示されません。)

--- 当サイト内を検索 ---