[ 目次 | BACK | NEXT ]

フルパスと相対パス

「フルパスでお願いします」
「相対パスでお願いします」
こんな設置説明を見たことありますか?
掲示板やカウンターのCGIをレンタルじゃなく、自分のサーバに設置するようになると
よく見かけるようになるんだけど、それじゃぁ、誰かのHPのソースを見たとき
画像やページのアドレスが、http:// から書かれてるアドレスと
ファイル名だけの場合と、不思議な ../ とか ./ とかで始まってるのを見た事はありますか?

結論から言うと、http:// で始まるのがフルパス。
 ./ ../ で始まるのが相対パス。

フルパスは自分が今何処に居ても、行き先がはっきりしてる住所のようなもの。
NOELさんちの住所は、神奈川県横浜市○○区△△町〜ってのがそれ。
でも、すぐ近くに居て、「NOELさんち何処ですか?」って誰かに尋ねると
「ここをまっすぐ行って、●●商店を右に曲がって〜」って現在地から教えてもらうのが
相対パスってわけです。

 では、こんな表示の説明は見る機会があるでしょうか?

   yaoya ┬ kudamono ┬ ringo ┬ fuji.htm
         │          │       ├ jonagold.htm
         │          │       └ tsugaru.gif
         │          └ ichigo ┬ toyonoka.htm
         │                    └ nyoho.gif
         └ yasai ┬ daikon ┬ aokubi.htm
                  │        └ sakurajima.gif
                  └ kinoko ┬ enoki.htm
                            ├ nameko.htm
                            ├ matsutake.htm
                            └ shimeji.gif
これはフォルダ構造を表しています。
一番上の段 fuji.htm yaoya の中の kudamono の中の ringoフ ォルダに入ってるファイル。
フォルダの中のそのまたフォルダの中の・・・とどんどん深いところにしまうのを、
階層が深いといいます。
ちょっと理解しにくいんですよね。アイコンをつけてみましょうか・・・。

    yaoya ┬  kudamono ┬  ringo ┬  fuji.htm
           jonagold.htm
           tsugaru.gif
           ichigo ┬  toyonoka.htm
                      nyoho.gif
           yasai ┬  daikon ┬  aokubi.htm
                     sakurajima.gif
                     kinoko ┬  enoki.htm
                                nameko.htm
                                matsutake.htm
                                shimeji.gif
では、fuji.htmのアドレスを指定してみましょう。
   yaoya/kudamono/ringo/fuji.htm
もしも、私のこのHPを置いているサーバにこの形でファイルをアップロードしたら、
fuji.htmのアドレスは次のようになります。
   http://web-img.com/yaoya/kudamono/ringo/fuji.htm
これはhttp://から書いているので、フルパス。
fuji.htm から tsugaru.gif と shimeji.gif までのパスを、相対パスで書いてみます。
   ./tsugaru.gif
   ../../../yasai/kinoko/shimeji.gif
ワケのわからない記号が出てきましたので説明します。
  ./(ピリオドひとつとスラッシュひとつ)
 現在みているファイルを同じフォルダにあるファイルを指定するときに使います。
 HTMLでは省略することが出来ます。
  ../(ピリオドふたつとスラッシュひとつ)
 現在見ているファイルをひとつ遡り、上の階層に移動する時指定します。
 ふたつ遡るには2回書けばOK。
 ファイル指定には近道がないので、指定するファイルまでたどり着ける
 分かれ道(フォルダ)まで遡る必要があり、
 遡ったところから更に目的のファイルがある階層まで指定します。

じゃぁ、ここで問題!
↑のフォルダ構造を見ながら、次のファイル指定をフルパスと相対パスで書いてください。
フルパスで書く時は、http://web-img.com/ に
アップロードされているという仮定でお書きください。
答えはこのページの一番下です。

問題1)
現在、toyonoka.htm を表示しています。
jonagold.htm へリンクするためのパスを書きなさい。

問題2)
現在、jonagold.htm を表示しています。
nyoho.gif を表示するためのパスを書きなさい。

問題3)
現在、toyonoka.htm を表示しています。
matsutake.htm へリンクするためのパスを書きなさい。

じゃ、このパスっていったいどんな時に書くわけ?
リンクを貼ったり、画像を表示したりするのにファイルのアドレスを入れますよね?
そこで使うのです。
「パスを通す」って言い方がありますが、
それはアドレスが間違いなく記述するようにってコトなんです。
間違いなく、ファイルはアップロードされているけど、
リンク切れだったり画像が表示されていない場合、パスが通ってないということになるワケです。

NOEL  

'02.11.02 


 [ 目次 | BACK | NEXT ]




問題の答えはこの下。ずーっとスクロールしてください。



















 問題1の答え
 フルパス→ http://web-img.com/yaoya/kudamono/ringo/jonagold.htm
 相対パス→ ./jonagold.htm  または  jonagold.htm

 問題2の答え
 フルパス→ http://web-img.com/yaoya/kudamono/ichigo/nyoho.gif
 相対パス→ ../ichigo/nyoho.gif

 問題3の答え
 フルパス→ http://web-img.com/yaoya/yasai/kinoko/matsutake.htm
 相対パス→ ../../../yasai/kinoko/matsutake.htm