Windowsユーザーに、URLとローカルドライブのルートディレクトリの対応付けを説明する時のポイントを教えて下さい。

http://q.hatena.ne.jp/1248871892#c155170 に記されてるヒントには違和感がある(ローカルのルートと Apache の httpd.conf でいうところの Alias がごちゃ混ぜになっているような気がします)ので、もっと分かりやすい説明を求めます。

回答の条件
  • 1人5回まで
  • 登録:2009/07/31 12:15:00
  • 終了:2009/08/05 12:28:22

ベストアンサー

id:pahoo No.2

pahoo回答回数5960ベストアンサー獲得回数6332009/08/04 12:14:14

ポイント100pt

まず、ローカルのディレクトリ構造と、URL(Webサーバ)のディレクトリ(パス)は分けて説明しましょう。ローカルのルートディレクトリはOSが、URLのルートディレクトリはWebサーバが決定します。


1.ローカルのディレクトリ構造について

1-1.Windowsの場合

http://www.geocities.co.jp/zsnes_123/command/directory.png

Windowsの「ルートディレクトリ」はローカルディスクの直下を指します。表記は "C:\", "D:\" ... のように行います。ここで、"C:" や "D:" を「ドライブレター」と呼びます。

つまり、Windows の場合、ローカルディスクの数だけ(厳密に言えば「パーティションの数だけ」)ルートディレクトリが存在することになります。

また、CDやUSBメモリのようなデバイスもルートディレクトリを持ちます。


1-2.Linuxの場合

http://www.thinkit.co.jp/images/solaris10/4/2/4.gif

Linuxの「ルートディレクトリ」は上記のような構造になっています。表記は "/"(スラッシュ)です。Windowsと異なりドライブレターは存在しません。外付けのDVDドライブは "/mnt/dvd" のように示されます。

つまり、Linuxの場合、そのPCに接続されているローカルディスクやパーティションの数に関わりなく、ルートディレクトリは1つしかありません。


2.URL(Webサーバ)のディレクトリ構造について

"http://www.hogehoge.jp/hate/index.html" のようなURLですが、"http://" はプロトコル、"www" はサブドメイン、"hogehoge.jp" をドメインと呼びます。

ドメイン以降がディレクトリ構造を示し、ドメインの直後の "/" がルートディレクトリ(ルートパス)です。このルートは、Webサーバが決めるものです。


たとえば有名なWebサーバ「Apache」は、Aliasという指定により、URLのディレクトリ(パス)とローカルのディレクトリ構造を結びつけます。

Alias / "D:/Apache Group/Apache2.2/public_html/"

このように指定すると、URLのルートがローカルディレクトリ "D:/Apache Group/Apache2.2/public_html/" に割り当てられます。


参考サイト

id:kmond2

図解入りの詳しい説明をありがとうございます。

> ローカルのルートディレクトリはOSが、URLのルートディレクトリはWebサーバが決定します

これはポイントですね。

2009/08/04 15:22:44

その他の回答(1件)

id:IlO10l0Il No.1

IlO10l0Il回答回数1757ベストアンサー獲得回数812009/08/03 05:03:56

ポイント10pt

http://www.kanzaki.com/docs/html/htminfo-uri.html

こちらのサイトがかなりわかりやすいと思います。

id:kmond2

ありがとうございます。

網羅的ではありますが、初心者から中級者に入る程度のレベルの Windows ユーザーにも分かりやすいように、図解や Linux との比較を交えた資料はないでしょうか。

よろしくお願いします。

2009/08/03 10:57:12
id:pahoo No.2

pahoo回答回数5960ベストアンサー獲得回数6332009/08/04 12:14:14ここでベストアンサー

ポイント100pt

まず、ローカルのディレクトリ構造と、URL(Webサーバ)のディレクトリ(パス)は分けて説明しましょう。ローカルのルートディレクトリはOSが、URLのルートディレクトリはWebサーバが決定します。


1.ローカルのディレクトリ構造について

1-1.Windowsの場合

http://www.geocities.co.jp/zsnes_123/command/directory.png

Windowsの「ルートディレクトリ」はローカルディスクの直下を指します。表記は "C:\", "D:\" ... のように行います。ここで、"C:" や "D:" を「ドライブレター」と呼びます。

つまり、Windows の場合、ローカルディスクの数だけ(厳密に言えば「パーティションの数だけ」)ルートディレクトリが存在することになります。

また、CDやUSBメモリのようなデバイスもルートディレクトリを持ちます。


1-2.Linuxの場合

http://www.thinkit.co.jp/images/solaris10/4/2/4.gif

Linuxの「ルートディレクトリ」は上記のような構造になっています。表記は "/"(スラッシュ)です。Windowsと異なりドライブレターは存在しません。外付けのDVDドライブは "/mnt/dvd" のように示されます。

つまり、Linuxの場合、そのPCに接続されているローカルディスクやパーティションの数に関わりなく、ルートディレクトリは1つしかありません。


2.URL(Webサーバ)のディレクトリ構造について

"http://www.hogehoge.jp/hate/index.html" のようなURLですが、"http://" はプロトコル、"www" はサブドメイン、"hogehoge.jp" をドメインと呼びます。

ドメイン以降がディレクトリ構造を示し、ドメインの直後の "/" がルートディレクトリ(ルートパス)です。このルートは、Webサーバが決めるものです。


たとえば有名なWebサーバ「Apache」は、Aliasという指定により、URLのディレクトリ(パス)とローカルのディレクトリ構造を結びつけます。

Alias / "D:/Apache Group/Apache2.2/public_html/"

このように指定すると、URLのルートがローカルディレクトリ "D:/Apache Group/Apache2.2/public_html/" に割り当てられます。


参考サイト

id:kmond2

図解入りの詳しい説明をありがとうございます。

> ローカルのルートディレクトリはOSが、URLのルートディレクトリはWebサーバが決定します

これはポイントですね。

2009/08/04 15:22:44
  • id:standard_one
    ドキュメントルートとドライブのルートの違いという意味ですか?
  • id:kmond2
    そうです。
    たとえば、/public_html というディレクトリがドキュメント(Apacheの)ルートになっているかもしれませんが、その実体は、かならずしも、/root や /etc と同じ“ルート”にあるとは限りません。
    Linux の、こうした仕組みは、ドライブレターがある Windows ユーザーには理解しにくいようです。Windowsユーザーにも分かりやすく説明する方法を探しています。
  • id:tdoi
    何が疑問なのかよくわからないのですが、どのあたりがAliasっぽいですか?

    http://ykr414.com/dos/#c07

    では、あるコンピュータ内のフォルダの呼び方を表現していて、詳しくは見てませんが、間違ってはいないと思います。
    また、元質問でのkn1967さんのコメントとも反していないです。

    また、ドキュメントルートとドライブルートの関係がわかりにくいとのことですが、LinuxもWindowsも関係ないところでつまずいている気がします。

    ドキュメントルートの指定は、Apacheに対する指定なので、ローカルのリソースの場所をしています。
    例)
    /var/www/html
    C:\public_html

    これとは別にURLは外部からのアクセスに利用されるので、

    http://example.com/css/main.css

    とあれば、これは、example.comのサーバのドキュメントルートから、/css/main.cssという絶対パスにあるこを示し、
    このサーバでのローカルリソースとしてみれば、

    /var/www/html/css/main.css
    C:\public_html\css\main.css

    にあるというだけだと思うのですが。


    疑問を明確化していただければ、回答できるかもしれませんが、これ以上はコメントしようがないです。

    何かの参考になれば。
  • id:kmond2
    tdoiさん、ありがとうございます。

    質問リンク先のコメントの前段の id:kia_44 さんのような方の問いかけに対して、きちんと説明してあげるというのが目的です。
    id:kn1967 さんが「便乗質問はすべきではない」という厳しいコメントを出しておいでなので、差し出がましいようですが、私が質問を立てた次第です。

    回答に記入してくだされば、相応のポイントを差し上げたく思います。よろしくお願いします。
  • id:kmond2
    質問を立てろと仰ったご当人からの回答がありませんでしたが、これで回答を締め切ります。
    回答いただいた皆さん、ありがとうございます。
  • id:kn1967
    言葉の通じない相手に回答しようと思わないだけ。

    まぁ、寛大な心で説明に努めようと思ったとしても、回答拒否されてるからね・・・笑。
  • id:kmond2
    相変わらず言い訳ばかりする方ですね。困ったものです。

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

絞り込み :
はてなココの「ともだち」を表示します。
回答リクエストを送信したユーザーはいません