転送する前にホームページの矛盾を検査する方法

せっかく汗水たらして作ったホームページも間違いがあってはなんにもなりません。間違いに気がつかずに転送してしまって、あとでInternetに見にいったらリンクが切れていたとかいうのはガックリきますよね。MirrorSiteにはホームページの矛盾を検出する機能がいくつか搭載されています。これを活用すれば無用な転送のやり直しをなくし時間と手間の節約になります。

半角カタカナをチェックする

ローカルリンクをチェックする

リンク切れをチェックする


転送しないディレクトリを指定する方法

制作中で完成していないようなディレクトリ配下は転送しても時間の無駄になるし、間違って人が迷い込んでも困るので、リンクを張らずに完成するまで転送しないのが好ましいでしょう。その方法について説明します。

例えばあるディレクトリが次の図のようになっていたとします。

このうちディレクトリのopenpageとファイルのmailto.htmlは制作中なので転送には含めないようにします。FTPサイトの編集-除外とASCIIモードのページを開くと次のような画面が出てきます。

openpageを選択して[一時除外]ボタンを押します。さらにmailto.htmlを選択して[一時除外]ボタンを押します。すると通行止めマークが付きます。

これで設定は完了です。この設定はopenpageとmailto.htmlがあるディレクトリと同じ場所に作成されるMirrorSite.exclude.txtというファイルに記録されています。ツリーを開いていろんな場所で細かく除外するものを設定することができます。


プロバイダが用意したディレクトリを転送から除外する方法

プロバイダはCGI用の/binディレクトリなどをあなたのホームディレクトリに自動的に配置することがあります。でも、このディレクトリはローカルPCにはないので、MirrorSiteは消そうとしますが通常消せませんからエラーして止まることになります。こういうディレクトリは転送から除外すればMirrorSiteは取り扱わなくなります。このディレクトリの指定方法は『転送しないディレクトリを指定する方法』と同じです。下図のように無視したいディレクトリがあるディレクトリに永久除外で追加してください。永久除外のファイル・ディレクトリは全巡回ボタンを押しても転送対象になりません。


ASCIIモードでファイルを転送する方法

MirrorSiteはデフォルトですべてのファイルをバイナリファイルとして変換しないで転送します。しかしCGIなどのファイルはASCIIファイルとして転送しないと動作しないので、こういうファイルには固有のファイル拡張子をつけて、そのファイル拡張子のファイルはASCIIモードで転送させることができます。設定は簡単で、FTPサイトの編集-除外とASCIIモードで拡張子をならべて書くだけです。


ファイルの大文字小文字を揃える方法

大抵、FTPサイト側に使われているマシンはUNIX系マシンです。UNIXでは大文字小文字が区別されますから、aaa.htmとAAA.HTMは別のファイルとして扱われます。ところがWindowsはこれらを同じファイルとして扱いますので、この差が厄介な問題を生む原因になります。 例えば、自分の作ったaaa.htmにリンクを張ったとしましょう。人間はaaa.htmと信じていますが、ローカルPCにあるファイルはAAA.HTMというファイル名になっているのかもしれません。Windowsではこの大文字小文字の差が判別しにくくなっています。WindowsではAAA.HTMはAaa.htmと見えたりAAA.HTMと見えたり千差万別です。結局、AAA.HTMのファイル名のままFTPサイトに転送してしまえば、あなたのリンクaaa.htmは存在しないことになり、転送して確認してみたら、初めてNot Foundが表示されて気づくことになります。

MirrorSiteではこのような失敗を防ぐために、転送時にファイル・ディレクトリ名を大文字または小文字に変換する機能があります。例えばいつも小文字に変換して転送するようにしておけば、あなたがaaa.htmにリンクを張って、実在するファイルがAAA.HTMでもMirrorSiteが転送するときには、ローカルPC上のAAA.HTMをaaa.htmに変更してから転送するので、このような失敗が防げます。 この大文字小文字変換の設定は、高度な設定にあります。


.htaccessファイルの作り方

ホームページを作るとき、HTMLファイルだけでなく、.gifや.jpg画像を配置したり、.exeや.lzhのバイナリファイルを置いて、クリックするだけで表示したりダウンロードできるように作ることでしょう。
このとき、ファイルをどのような形式でWWWサーバからWWWブラウザに送信するかは大変重要です。例えば、拡張子が.htmlや.htmのファイルはテキストファイルとしてWWWに送信しないと、正しく表示できません。ほかに.exeや.lzhなどの通常バイナリファイルとしてWindowsで扱われるファイルはバイナリファイルとして転送しないと、受け取ったWWWブラウザが画面に表示してしまったりして、ダウンロードできなくなってしまいます。

これらファイル拡張子に対してどのような形式で送るかは、デフォルトでWWWサーバが決めている方式と、ホームページ製作者に決定させる方式があります。例えば、[チューチューマウスと仲間たち]ホームページはメインにBekkoameプロバイダのWWWサーバを使用していますが、このWWWサーバは予めプロバイダが拡張子と送信方法をしまっているので、ユーザからは変更できません。ですが、.exeや.lzhはバイナリファイルとして扱われる設定になっているので、とくに何もすることはありません。
[チューチューマウスと仲間たち]ホームページのRimnetプロバイダは逆に拡張子と送信方法の対応の指定方法がユーザに公開されています。その代わり.exeや.lzhは自分で正しく設定しないと、リンクを張ってクリックすると画面に出てきてしまい、思ったようにダウンロードすることができません。

このRimnetのケースでは、ユーザのホームディレクトリに.htaccessというファイルを置いて制御します。ikeのRimnet側WWWサーバの.htaccessには次の内容が書かれています。

AddType application/octet-stream .exe
AddType application/octet-stream .dll
AddType application/octet-stream .lzh

これらはファイルを8ビットストリームとして送信するという意味です。つまりバイナリファイルとして送信されるので、このファイルにリンクしてクリックするとダウンロードができるようになります。他にバイナリファイルとして扱いたいものがあれば、まねして後に続けるだけでOKです。
さて、この.htaccessファイルですが、Windowsでいうところの拡張子だけのファイルに相当するので、作るには一工夫必要です。内容はテキストファイルなので、テキストファイル.TXTを作って後で名前変更をしようとすると、Windows95ではシェルが「ファイル名を入力してください」と文句をいいます。メモ帳で作って、名前をつけて保存としても、.htaccess.txtと勝手に後ろに.txtをつけて余計なことをしてくれます。

ikeは秀丸エディタでなんの疑問もなく.htaccessファイルを作っていたんですが、調べてみると以上のように難しいことがわかったので、いっそのこと、ikeが使っている.htaccessファイルを一緒にセットアップでコピーしておきましたので使ってください。
場所はMirrorSiteのインストール先ディレクトリのETCサブディレクトリの下にコピーされています。


FTPサイトの時間差計測を省略する方法

MirrorSiteは毎回LOGONするたびにローカルPCとFTPサイトとの時間差を計測します。これはファイルの更新時間を比較して更新されたファイルだけを転送するのに重要なことです。ところが夜のゴールデンタイムにFTPサイトにアクセスすると混雑していて時間差計測に思いのほか時間が掛かることがあります。もし、FTPサイトの時間差が一定しているなら、直接時間差を指定して計測を省くことができます。
FTPサイトの編集画面で、[超!高度な設定]タブを開いて、ローカルとFTPサイトの時間差計測の欄に、+または−をつけて実数を指定します。

例えば、FTPサイトがローカルPCよりいつも16時間遅れている場合には、-16.0と記入します。