へたれCGI講座



4:パス(詳細)編

 さてさて今回、本当はBBS設置編にしようと思っていたのですが、ミスもなくすんなり設置 できてしまいました(喜。
 ということで、今回は放置されていたパスの実際の記述について詳しく勉強したいと思い ます。BBSに初来客様があったし!また来てくださいねードナさん♪←嬉しいらしい
 さて、2:パスとかパーミッションとか編で大体の考え方はご理解 いただけたと思いますが(いや思いたい…)今回は具体的な記述方法です。
 パスにはURLのパス指定とファイルのパス指定の2種類あります。その2種類について、 今回は勉強しましょう。(ワタシも勉強します…(笑))


■はじめに■
 皆さんはHTMLを理解されているでしょうか?
大体は理解してる、という方が多いと思いますが(実際、ワタシもタグ打ちでサイトを作って いても、まだ知らないタグはたくさんあります)タグ打ちでサイトを作れるレベルの方はこの 「はじめに」は読み飛ばしてください。

 ビルダーなどをお使いの方はHTMLソースをご覧ください。リンクを貼っている場合、このようなタグが使われているはずです。
<A Href="http://ojarun.s18.xrea.com/">このサイト</A>
実際に使うとこんな感じです(色指定などは別ですよ)→このサイト
 この<A Href="ほにゃらら">ほにゃらら</A><A>タグはリンクタグです。覚えておいてください。今回説明するのは、この「"」で囲まれた部分です。
 注:ちなみにこのタグの場合、<A>がタグでHrefは属性といいます。


■URLのパス指定■
 以前の説明で要するにパスは道筋、のようなことを書きましたが、今回は実際フォルダ
(ディレクトリ)とファイルで考えていきましょう。
絶対パスについては大丈夫ですよね?実際ファイルがアップされているURLを挿入する(http://から始まるURL)だけですから。今回は相対パスについて説明します。


ちょっとでかかったですか(笑? とりあえず、赤丸がついているのがフォルダ(ディレクトリ) です。(どうでもいいですが、ひどいファイル構造してますねぇこの人は(笑))

 さて説明に入りましょう。今、作成していると考えるファイルは例によって変わりますので注意してください。

【例1:同じディレクトリに入っているファイルにリンクを貼る】
注:今回は「top」ディレクトリに入っている 「page1.htm」を使用していると考えてください。

 では「page1.htm」から「page3.htm」にリンクを貼ってみましょう。
 <A Href="page3.htm">ほにゃらら</A>
これだけです(笑。
 また、<A Href="./page3.htm">ほにゃらら</A>という記述もできます。
「./」は同一ディレクトリという意味です。
基本的には、同じディレクトリに入っている場合はファイル名だけでOKなのです。

【例2:上のディレクトリに入っているファイルにリンクを貼る】
注:今回も「top」ディレクトリに入っている 「page1.htm」を使用していると考えてください。

 今、「page1.htm」はTOPディレクトリ内にいますね? 一つ上のディレクトリに 入っているファイルとは、この図では「public」ディレクトリ内の「page2.htm」にな ります。 ではリンクを貼ってみましょう。
<A Href="../page2.htm">ほにゃらら</A>
 この「../」は一つ上のディレクトリを表します。 つまり一つ上のディレクトリ (public)の中にあるファイル(page2.htm)にリンクが貼られたことになるわけで す。 ちなみに二つ上のディレクトリの場合(図にはないですが)は
<A Href="../../page2.htm">ほにゃらら</A>
になります。

【例3:下のディレクトリに入っているファイルにリンクを貼る】
注:今回は「public」ディレクトリに入っている 「page2.htm」を使用していると想定します。
 今度は「public」ディレクトリ内の「page2.htm」を使用中ですよ?
迷子にならないように、もう一度図で確認してみてください。OKですか?
では「public」ディレクトリの下の(中のとも言うんですが)「gazou」ディレクトリ内 の「top.gif」にリンクを貼ってみましょう。
<A Href="gazou/top.gif">ほにゃらら</A>
もしくは <A Href="./gazou/top.gif">ほにゃらら</A>
これでOKです。下に行く場合は基本的に自分のいる場所から下を書いていく だけなので簡単かと思います。

【例4:上のディレクトリに入っている別ディレクトリのファイルにリンクを貼る】
注:今回は「top」ディレクトリに入っている 「page1.htm」を使用していると考えてください。
混乱してませんか?混乱してきたら一息ついてから図を見直してくださいね^^;
今回は「top」ディレクトリ内の「page1.htm」から「gazou」ディレクトリ内の 「top.gif」にリンクを貼ってみましょう。
<A Href="../gazou/top.gif">ほにゃらら</A>
もう大体わかってきましたね?
ポイントは「./」(同一ディレクトリ)と「../」(上位ディレクトリ)です。
お疲れさまでした^^; これでURLのパス指定の説明は終わりです。次はファイルのパス指 定ですが今のURLパス指定が理解できれば難しくありません。


■ファイルのパス指定■
 まだあるの〜?と思われるかもしれませんが、基本的にはURLと同じです。
ただ、「/」(スラッシュ)の部分がWindowsでは「\」、UNIX系のPerlは同じ「/」、ちなみに MacPerlは「:」(コロン)です。
私はWinだしPerlはURLと同じスラッシュ?じゃあURLと何が違うのよ!と思われるでしょう が、違うのは「絶対パス」です。
 Windowsは「C:\」ではじまり、UNIX系のOSでのファイルの絶対パス指定は「/」で始まります。逆を言えば、「/」で始まる UNIX系OSパスは絶対パスなのです。
 ただ、この絶対パスはサーバーやプロバイダによって違うので、各自調べてみてくださ い。(使わないなら必要ないです〜)
 そして朗報です(大袈裟)! 相対パスはURLと同じ(強調しなくても…)なんです〜。
いやー苦労して書いた(読んだ)かいがありましたね、お互い(笑)!



BACK NEXT
CGI-Index TOP