5

これは長い間私を悩ませてきたので、私は質問をする必要があります。

/との違いは何ですか./、それはサーバー設定だけですか?

たとえば、ルートディレクトリで画像フォルダを探している場合は、次のように記述します。

<img src="/images">

ただし、別のサーバーは次のようにのみ受け入れます。

<img src="./images">

大したことではありませんが、理想的な世界では、このような細かい部分を更新しなくても、自分のサイトを別のサーバーに比較的簡単に転送できると思います。

もちろん、PHPで宣言し、構成ファイルで一度設定することはできますが、それは本当に私を悩ませています。ルートを宣言する方法が2つあるのはなぜですか?

4

3 に答える 3

13

現在のページに関連するファイルを参照するには、プレフィックスなしでパスをわかりやすく記述するか、プレフィックスを付けて明示的にパスを指定できます./。サイトのルートに相対的なパスを持つファイルにアクセスするには、パスの前に。を付け/ます。

概要

/絶対パス(ルートディレクトリからリソースへのフルパス)
./現在のディレクトリからの相対パス(フォルダプレフィックスを指定しない場合と同じ)
../親ディレクトリから
../../の相対パス親の親からの相対パス

Current URL               Resource path          Resolves to

/pages/home.html          ./picture.jpg          /pages/picture.jpg
/pages/home.html          ../img/picture.jpg     /img/picture.jpg
/pages/about/home.html    /img/picture.jpg       /img/picture.jpg
/pages/about/home.html    img/picture.jpg        /pages/about/img/picture.jpg
/home.html                img/picture.jpg        /img/picture.jpg
于 2013-03-12T09:38:37.670 に答える
1

これは、ソースページ(このHTMLを含むページ)自体がドメインのルートにある場合にのみ同じです。

一般的な場合、./imagesはと同等imagesです。

于 2013-03-12T09:38:41.780 に答える
0

URL は HTML でも使用されるという事実を除けば、これは HTML とは何の関係もありません。これは URL 仕様で定義されています。簡単に言うと、./ は現在のベース URL に対して相対的であり、/ はサーバー ルートに対して相対的です (技術的には、ベース URL のサーバー部分を指します)。

于 2013-03-12T10:30:42.273 に答える