年がわりにファイルを自動で更新する




概要

お客様の要望で1月1日0時0分0秒になったらページをお正月版に切り替えてほしいという要望がぼちぼちあるのですが、年が切り替わった瞬間に手動ではやりたくないので、たいていの共用レンタルサーバーでも実行できる簡単な自動更新方法を紹介します。

自動実行スクリプト

前提として、サーバーがcron実行に対応していること、シェルかPHPでディレクトリ・ファイルのコピー時処理ができること、PHPでメール送信ができることのみです。
共用レンタルだと、サーバーによってコマンドラインで実行できるコマンドが限定されていてcpコマンドが使えないとか、メール送信ができないとかあったりするのでなるべくよくあるレンタルサーバーで対応できるようにコピー処理はシェル・PHPどちらでも実行できるようにし、メール送信はPHPで実行するようにしています。
これで私が扱ったことのあるたいていのサーバーで対応できるようになりました。

中小企業のお客様が多いので共用レンタルサーバーが多いため、環境に制限がある場合が多く、もっとスマートにはできるのですがそうするとあるサーバーだと使えないなど問題が出てしまうので今の形で落ち着きました。
年に数回しか使わないのでこんなもんでたいていカバーできます。