mirrorをWeb pageの更新に使う

mirrorとは何か

mirrorの先頭の部分より抜粋

#!/usr/bin/perl
# Make local directories mirror images of a remote sites
# By Lee McLoughlin <lmjm@doc.ic.ac.uk>

mirrorってのはftpを使ってファイルの同期を取るperl scriptです。anonymous ftp site間でよく使われています。perlが正しく動く環境ならinstallするだけで使えると思います。

mirrorを使用することの利点とは?

その質問に答えることは難しくはありません。プロパイダに自分のWeb用のDisk Spaceを持っていて、自分のPC上で実際にhtmlを書いている場合、一々ftpして更新したfileをputするのは御利口さんとは言えません。mirrorを適切に用いることができるならばコマンド一発ですべてOKであります。よろしいか。

私の使用している環境

自宅の環境

Debian GNU/Linux上でMuleを使ってhtmlを書いています。LynxやNetscapeからlocalhostのApache経由で仕上りをテストします。htmlは/home/iyoda/public_htmlに置いて作業してます。

プロパイダの環境

私はrimnetと契約しているため環境はSunOS4でWebサーバはNCSAになります。htmlは/home/usr6/iyoda/public_htmlに置くことになります。

そのためのconfig-file

package=html-update
  site=???.kt.rim..or.jp
  remote_dir=/home/usr6/iyoda/public_html
  remote_user=???
  remote_password=???
  local_ignore=(.htaccess|count|temp.html|RCS|log)
  compress_excl=.
  local_dir=/home/iyoda/public_html
  get_file=false
このようなconfig-fileを作成します。プロパイダ側のuser IDやpasswdを記述するのでこのファイルの管理は厳重にしてください。勘所としては
  1. get_file=false: とすることで通常はgetしてくるために使われるmirrorがputするために動作するようになります。
  2. local_ignore: .htaccessやCGIカウンタのファイル、RCSのディレクトリ等はmirrorの対象からはずしますApacheとNCSAでは.htaccessは共用は難しいですし。
  3. compress_excl: 勝手にcompressされては困るので全て対象外としておきます。

実際に更新する

設定ができているのなら簡単です。

mirror <config-file>
とするだけです。

パスワードをconfig-flieに書きたくない

mirror -u username <config-file>
とするとパスワードを聞くプロンプトが出てきます。 この方法であればconfig-fileにパスワードやIDを書かなくても良いですね。 ワンタイムパスワードとか使っているときはこの方法しかないと思います。

IYODA Atsushi's pageに戻る

このページへのリンクは自由に張ってくださってかまいません。
iyoda-www@atikoro.org
$Date: 2004/06/03 22:10:42 $