351

URL で末尾のスラッシュを使用する必要があるのはいつですか? たとえば、私の URL は のように見えます/about-us//about-us?

私は SEO 関連の問題を十分に認識しています - コンテンツの重複と正規のもの。ページを単独で正しく提供するというコンテキストで、どれを使用する必要があるかを理解しようとしています。

たとえば、私の同僚は、末尾のスラッシュは「フォルダー」または「ディレクトリ」を意味すると考えているため、これは正しいスタイルではありません。しかし、最後にスラッシュがないと思います-それはほとんどフォルダーのように見えるため、まったく正しくありませんが、そうではなく、通常のファイルでもなく、拡張子のないファイル名です。

どちらを使用するかを知る適切な方法はありますか?

4

9 に答える 9

74

ディレクトリ以外の URL (WordPress など) の末尾にスラッシュが多用されていることに、いつも驚かされます。リソースの後にスラッシュを置くことは意味的に間違っているため、これは本当にどちらかまたはどちらかの議論であってはなりません。Web はアドレス指定可能なリソースを提供するように設計されており、それらのアドレス (URL) は *nix スタイルのファイル システム階層をエミュレートするように設計されていました。その文脈では:

  • スラッシュは常にディレクトリを示し、ファイルではありません。
  • ファイルには任意の名前 (拡張子の有無にかかわらず) を付けることができますが、スラッシュを含めたり、最後にスラッシュを付けたりすることはできません。

これらのガイドラインを使用すると、ディレクトリ以外のリソースの後にスラッシュを付けるのは間違っています。

于 2011-09-09T16:40:29.867 に答える
40

これは美学の問題ではなく、技術的な違いです。それを考えるディレクトリは完全に正しく、ほとんどすべてを説明しています。それを解決しましょう:

石器時代に戻ったか、静的ページのみを提供しています

Web サーバー上に固定のディレクトリ構造があり、画像や html などの静的ファイルのみがあり、サーバー側のスクリプトなどは一切ありません。

ブラウザがリクエストし/index.htm、それが存在し、クライアントに配信されます。後で、多数の - たとえば - レビューされた DVD ムービーと、/dvd/ディレクトリ内のそれぞれの html ページが作成されます。今、誰かがリクエスト/dvd/adams_apples.htmし、そこにあるので配信されます。

ある日、誰かがリクエストをしただけ/dvd/です。これはディレクトリであり、サーバーは何を配信するかを理解しようとしています。アクセス制限などの他に、2 つの可能性があります: ユーザーにディレクトリの内容を表示する (これは既にどこかで見たことがあるはずです) か、デフォルトのファイルを表示します (Apache では: DirectoryIndex: sets the file that Apache will serve if a directory is requested.) 。

これまでのところ、これは予想されるケースです。すでに処理の違いが示されているので、詳しく説明しましょう。

午前 5 時 34 分、ファイルのアップロードを間​​違えました

(ちなみに、これは完全に理解できます。)したがって、あなたは完全に間違ったことをし、アップロード/dvd/the_big_lebowski.htmする代わりに、そのファイルをdvd(拡張子なしで)としてアップロードしました/

誰かがあなたの/dvd/ディレクトリ リストをブックマークし (もちろん、その気の利いた を作成して常に更新したくはありませんindex.htm)、あなたの Web サイトにアクセスしています。ディレクトリのコンテンツが配信されます - すべて問題ありません。

誰かがあなたのリストを聞いて、入力しています/dvd。そして今、それはねじ込まれています。DVD ディレクトリ リストの代わりに、サーバーはその名前のファイルを見つけて、Big Lebowski ファイルを配信します。

それで、あなたはそのファイルを削除し、その人にページをリロードするように言います。サーバーは/dvdファイルを探しますが、なくなっています。ほとんどのサーバーは、その名前のディレクトリがあることに気づき、探していたものが実際には別の場所にあることをクライアントに伝えます。応答は次のようになります。

Status Code:301 Moved PermanentlyLocation: http://[...]/dvd/

したがって、ディレクトリやファイルについての考えを完全に無視すると、サーバーはそのようなものしか処理できず、別の言い方がない限り、「スラッシュかどうか」の意味を判断します。

最後に、この応答を受信した後、クライアントが読み込ま/dvd/れ、すべてが正常です。

大丈夫ですか?いいえ。

「大丈夫」じゃ物足りない

すべてが渡され/index.phpて処理される動的ページがあります。今まではすべてうまく機能していましたが、全体が遅く感じ始め、調査します。

/dvd/listすぐに、 がまったく同じことを行っていることに/dvd/list/気付くでしょうindex.php?controller=dvd&action=list。追加のリクエストが 1 つありますが、さらに悪いことです。の HTTPS URL にリダイレクトしcustomer/loginます。ユーザーエクスペリエンスを遅くする不要な HTTP リダイレクト (= 追加のリクエスト) が大量に発生することになりますcustomer/login/customer/login/

ほとんどの場合、ここにもデフォルトのディレクトリ インデックスがindex.php?controller=dvdありactionますindex.php?controller=dvd&action=list

概要:

  • で終わる場合は、ファイルになる/ことはありません。サーバーの推測はありません。

  • スラッシュの有無はまったく別の意味です。「スラッシュまたはスラッシュなし」には技術/リソースの違いがあるため、それに注意して使用する必要があります。サーバーがロードする可能性が最も高いため、/dvd/index.htmまたは正しいスクリプトをロードするため、次のように言います/dvd。だったでしょう/dvd/

  • 実際にスラッシュ付きのバージョンを意味している場合でも、スラッシュを省略すると、追加の HTTP リクエスト ペナルティが発生します。これは常に悪いことであり (モバイルの遅延を考えてください)、「きれいな URL」よりも重みがあります。特に、クローラーは SEO が信じている、または信じてほしいほど愚かではないためです;)

于 2013-04-09T17:44:26.003 に答える
15

ここでの他の回答は、末尾のスラッシュを省略することを支持しているようです。末尾のスラッシュが検索エンジン最適化 (SEO) に役立つケースが 1 つあります。これは、あなたのドキュメントに .xml ではないファイル拡張子のように見えるものが含まれている場合です.html。これは、Web サイトを評価しているサイトで問題になります。次の 2 つの URL のいずれかを選択する可能性があります。

  • http://mysite.example.com/rated.example.com
  • http://mysite.example.com/rated.example.com/

そのような場合、末尾にスラッシュが付いたものを選択します。これは.com、拡張子が Windows 実行可能コマンド ファイルの拡張子であるためです。検索エンジンやウイルス チェッカーは、そのようなメカニズムを通じて配布されたマルウェアが含まれている可能性があるように見える URL を嫌うことがよくあります。末尾のスラッシュは、ページが検索エンジンでランク付けされ、ウイルス チェッカーを通過できるようにすることで、懸念を軽減するようです。

URL.のファイル部分に何もない場合は、簡潔にするために末尾のスラッシュを省略することをお勧めします。

于 2013-04-10T10:17:56.340 に答える
11

ファイル名に拡張子が必要だと誰が言いましたか?? いつか* nixマシンを見てください...
あなたの友人に同意します。末尾のスラッシュはありません。

于 2011-05-10T10:34:21.277 に答える