- ベストアンサー
URLのフォルダとファイルの見分け
http://www.something.com/aaa/bbb というURLを入力します。 この時、bbbがフォルダであればその配下の一覧が表示され、 bbbがファイルであればそのページが表示されます。 では、aaaフォルダの配下にbbbというフォルダとbbb.htmlのようなファイルが両方合った場合、ブラウザはどう解釈するのでしょうか。本によると、サーバーには両方を作る事はできないと記述がありましたが、場合によっては可能なような気がします。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
>失礼しました、それではindex.htmlがその階層内に無ければどうでしょうか。 サーバー側の設定によって、エラーになったり、ファイル一覧が表示されたりします。 普通は、エラーになるように設定します。 元の質問に回答すると、 (1) サーバーは、bbbというファイルがあれば、それを返す (2) ない場合、bbb というディレクトリ(フォルダ)があれば、サーバーは、http://www.something.com/aaa/bbb/ にリダイレクトする (3) どちらも無ければ404エラー ブラウザは、/aaa/bbb/ へのリダイレクトの応答をサーバーから受け取った場合は、普通は再度http://www.something.com/aaa/bbb/ に対してのリクエストを送ります。 /aaa/bbb/ へのリクエストを受け取ったサーバーは、そのディレクトリに、インデックスファイルがあればそれを返すし、無ければ(上に書いたように設定次第ですが)404エラー。
その他の回答 (2)
- bunjii
- ベストアンサー率43% (3589/8249)
>この時、bbbがフォルダであればその配下の一覧が表示され そうとは限りません。 Webサーバーの設定次第です。 >bbbがファイルであればそのページが表示されます。 そのようになりますが、bbbの拡張子が何でも良いわけではありません。 一般的には.htmlと言う拡張子を使いますが、.htm、PDF、cgi、.asp等の場合もあります。 ホームページとして表示できない拡張子の場合は無視されます。 >では、aaaフォルダの配下にbbbというフォルダとbbb.htmlのようなファイルが両方合った場合、ブラウザはどう解釈するのでしょうか。 ブラウザは何も判断しません。 リクエストに対する応答を表示するだけです。 但し、サーバーはリクエストに対して応答しなければなりませんのでWebサーバーの動作を定義しているファイルに基づいて応答します。 ファイル名を優先して応答するかも知れません。 >本によると、サーバーには両方を作る事はできないと記述がありましたが、場合によっては可能なような気がします。 WebサーバーのOSによってはディレクトリの管理規則でフォルダ名と同一のファイル名を排除することが有るかも知れません。(未確認) Windows OSの場合は拡張子も含む場合は同一のフォルダとファイルは作成できません。(確認済み)
お礼
本当ですね。ありがとうございます。
- katokundes
- ベストアンサー率22% (492/2217)
普通は覗かれては困るのでフォルダー指定では、index.html index.htm などを設定して覗けないようにするのでは
補足
失礼しました、それではindex.htmlがその階層内に無ければどうでしょうか。
お礼
なるほど。ありがとうございます。