これ何て呼びますか

例えば今
http://kudamono.com

のページにいるとして、以下のような1つ下の階層のフォルダ
http://kudamono.com/mikan/
(index.htmlなしのページに正規化しています)

にアクセスするには、次の二つの記述ではどちらがより望ましいですか?
href="./mikan/"
href="mikan/"

ご回答よろしくおねがいします

A 回答 (3件)

正しくは「./」からの記述なんですが、「./」は省略可能です。


ただ「./」から書いているページはほとんど見た事が有りません。
私が「./」を使うのは、同階層のindexにアクセスする時だけですね。
    • good
    • 1
この回答へのお礼

省略しても特に問題なさそうだと思うので、index以外は省略した記述でいこうと思います。
ご回答ありがとうございました。

お礼日時:2013/06/07 19:29

サーバーとかには全く無関係でブラウザの機能です。


HTTPプロトコルは、基本的にセッション単位の接続になります。FirefoxのLive HTTP Headersを使えば一目瞭然ですが、
http://kudamono.com
 という要求に対して、DIRECTORY INDEXで指定してあるファイルが送り返されていますから、ブラウザはカレント(現在地)は/だということを知っています。
 ここでページ内に
<a href="./mikan/">
<a href="mikan/">
のいずれであっても、ブラウザはサーバーに対して、
GET /mikan/
を要求していますね。!!!

 ここからは、HTTPサーバーの仕事になります。すなわち
/mikan/
 を開こうとします。これはディレクトリですから、そのディレクトリにDIRECTORY INDEXが指定されていれば、そのファイルを提供します。

 もし、
<a href="/mikan/index.html">
 でしたら、ファイル名まで指定するほうが、動作的には負荷は少ないですが、問題になる差ではないでしょう。

>(index.htmlなしのページに正規化しています)
 この意味が分からないのですが、PATH_INFOで動的にコンテンツを作成しているのですか?単にファイルなり実行ファイルでしたらDIRECTROY INDEXで指定しますけど・・
[apache httpd.conf]
<IfModule dir_module>
DirectoryIndex index.html index.htm index.cgi index.sh
</IfModule>
とか・・
    • good
    • 0
この回答へのお礼

詳しいご回答ありがとうございます

正規化しているとは、例えば

http://kudamono.com/index.htmlにアクセスしたら

http://kudamono.comにアクセスしなおすように.htaccessファイルで指定しているという意味でした

お礼日時:2013/06/07 19:27

サーバによります。


下は使えないサーバがありますが、短くてすむというメリットがあります。
    • good
    • 0
この回答へのお礼

サーバーによってできない場合があるとは知りませんでした。
ご回答ありがとうございました。

お礼日時:2013/06/07 19:28

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています


おすすめ情報