web-dev-qa-db-ja.com

HTML URLの先頭のスラッシュの目的は何ですか?

一部のブログの投稿には、href/で始まる値を使用したリンクがあることに気付きました。

例えば:

<a href="/somedir/somepage.html">My Page</a>

先頭の/は、パスがサイトルートから始まることを意味しますか?

つまり、サイトのURLがwww.mysite.comの場合、有効なhref値はwww.mysite.com/somedir/somepage.html?です。

これはすべてのブラウザで受け入れられている規則ですか?

16

親または子の代わりに目的のURLが返されるように、/でURLを開始することが重要です。

たとえば、ブラウジング/cream-cakes/があり、そのページにblah.htmlが含まれている場合は、スラッシュなしでページ/cream-cakes/blah.htmlにアクセスしようとしますが、スラッシュがある場合はdomain.com/blah.htmlになる最上位を意味すると仮定します。

一般的に、サイトの構造を変更するときは、意図したページが返されると仮定して正しいか間違っているかはわかりませんが、私の経験では常に/を使用するのが最善です。

16
Simon Hayter

先頭の「/」は、パスがサイトルートから始まることを意味しますか?

技術的には、これは 4.2 of RFC 3986 セクションで「絶対パス参照」として参照されます。

単一のスラッシュ文字で始まる相対参照は、絶対パス参照と呼ばれます。

パスが現在のディレクトリではなくルートディレクトリへの絶対パスであることを保証します(「相対パス」参照と呼ばれます)。詳細については this をご覧ください。

10
dan

これはルート相対リンクです。これは相対リンク(../に似ています)ですが、サイトのルートから始まります。サイトの3レベルの深さのページがスラッシュでリンクを開始する場合、パスの残りの部分はサイトのルートに関連します。

この形式のパスの利点は、マークアップの文字数が少ないことです。

http://example.com/page.html

/page.html

もう1つの利点は、ドメインの変更に対する移植性です。たとえば、example.comコンテンツがexample.orgに移動された場合、同じディレクトリの命名/レイアウトが使用されていると仮定すると、ルート相対リンクは引き続き機能します。ページをローカルで開発し、Webにアップロードする場合に特に便利です。

他のタイプのパス-相対(../)および絶対(http://...)と同様に、これはファイルまたはディレクトリの名前が変更または移動されたときにリンクの更新を引き続き受けます。

2
Grant Palin

この tutorial は、私の質問に対する答えがyesであることを示しています。

有効なhref値は、実際にはwww.mysite.com/somedir/somepage.htmlです。

0