P-0004 インターネットの URL の指定方法

雑誌や掲示板などで、あるいは友人から紹介されたサイトを見に行ったら、「 Error 404 ファイルが見つかりません( File Not Found )」などといわれてしまうことがあります。こういう場合は、本当にそのサイト自体が存在しないという場合もあります(特にアンダーグラウンド系では多い)が、 URL の指定を間違っているということがほとんどです。(参考:「リンク切れ対処法」

これとは別に、たまに、「表示はされるのだが、表示されるまでにえらく時間がかかる」という場合があります。これは、一体何故なのでしょうか。

実際に、当サイトを例にとって見てみましょう。

ウチを例にとってみる

  1. http://piro.sakura.ne.jp/index.html (フルパス)

    当サイトの正式な URL は、こうです。

  2. http://piro.sakura.ne.jp/ (末尾にスラッシュ有り)

    リンク集などで紹介される URL の形式は、こちらの場合が多いですね。

  3. http://www.cc-net.or.jp/~piro (末尾にスラッシュ無し)

    最近、自サイトを紹介するときなど、こう表記する方が多いですね。 TV のコマーシャルでも、タレントの自サイトの宣伝などでちらほら……

これらの URL では、どれも同じサイトを開くことができます。しかし、バックで行われている処理は少しずつ違います。

1. の場合─フルパス指定

http://piro.sakura.ne.jp/index.html 」と指定すると、ブラウザは「 www.cc-net.or.jp 」というサーバーの「 ~piro 」というディレクトリ(フォルダ)へ「 index.html 」というファイルを読みに行きます。ファイルが見つからなければそれまでで、「 404 File Not Found 」というエラーになります。

2. の場合─スラッシュ有りの指定

http://piro.sakura.ne.jp/ 」と指定すると、ブラウザは「 www.cc-net.or.jp 」というサーバーの「 ~piro 」というディレクトリへ直接アクセスします。このとき、サーバーの側に「標準では index.html を読む」という設定がされていれば、サーバーは自動的に index.html を探して、 index.html の中身をブラウザに送信します。

※サーバーによっては「 index.htm 」だったり「 main.html 」だったりといろいろありますが、これらが複数設定されている場合、サーバーはこれらの名前のファイル全てを検索します。

ちなみに、ファイルが見つからない場合は、「 http://piro.sakura.ne.jp/ 」の中にあるファイルのリストが表示されるか、「404」「403」などのエラーになります。

3. の場合─スラッシュ無し

http://www.cc-net.or.jp/~piro 」と指定すると、ブラウザは「 www.cc-net.or.jp 」というサーバーの「 ~piro 」というファイルにアクセスします。が、当然こんなファイルはありませんので、「あんたが探してるファイルは無いぜ」という情報だけを返してきます。すると、 IE や NN などの賢いブラウザは、 URL 末尾に自動的にスラッシュを付けてもう一度サーバーに問い合わせ(2.と同じ処理)ます。

パッと見、最も無駄が多いのはどの方法でしょうか? 言うまでもなく 3. でしょう。しかも実際には、単に「無駄」というだけではなく、迷惑でさえあります。

無駄な通信が発生するということは、その URL を紹介された人がそこへアクセスするときに無駄な時間がかかってしまうことになります。これは明らかに「迷惑」でしょう。しかも、余計なアクセスの増加はインターネット回線という資源を無駄遣いすることに繋がります。自分やその人だけでなく、無関係の第3者にまで迷惑がかかる──こうなると「迷惑」どころかむしろ「公害」です

というわけで、他人にサイトの URL を紹介するときは、できるだけ 1. か2.の形式で紹介するようにしましょう。 3. は、よっぽどの場合を除いては使わないようにしましょう。もっとも、そんな「場合」はそうそうあり得ないのですが。