4

そのため、各ページに独自の ID を持つサイトのわかりやすい URL を用意する予定です。そこで、人々がこれを行う一般的な方法を 2 つ見つけました。

http://www.example.com/page/123/slug-for-the-page
http://www.example.com/page/slug-for-the-page/123

どちらが好ましいですか?それぞれの賛否両論は何ですか?URL を入力するときは、ブラウザが履歴やブックマークからオートコンプリートしやすいため、2 番目のフォームの方が簡単であることがわかります。でも、最後にIDがあるのは本当に不思議です。

現在のスラッグと一致しないスラッグには、正規 URL へのリダイレクトを使用します。しかし、スラッグが一意である場合、スラッグはあるがIDのないURLからのリダイレクトも行うのでしょうか? たとえば、 にリダイレクトhttp://www.example.com/page/slug-for-the-pagehttp://www.example.com/page/slug-for-the-page/123ます。

4

2 に答える 2

4

まず、いくつかの歴史:

これらの URL の本来の理由は、データベースを ID のみでインデックス化することを人々が望んでいたことです。slug によるインデックス作成 (および一意性の強制) は、コンピューターとプログラマーの両方にとって余分な作業でした。Rails により、このスタイルが普及しました ( /page/1)。

しかし、このスタイルは検索エンジンにとってかなり不透明です。そのため、人々は ID ( ) の後にスラッグを追加/page/1-slug-for-pageして、検索エンジン (およびユーザー) を支援しました。しかし、最後のテキストは無関係でした。重要なのは数だけでした。スラッグはデータベースに保存されないこともあり (自動生成される場合もあります)、スペースを節約するためにインデックスが作成されていませんでした。

どちらが好ましいですか?

ID を URL に入れる方法は、どちらのスタイルでも構いませんが、「数字の後にスラッグ」のスタイルがより一般的です。

現在のスラッグと一致しないスラッグには、正規 URL へのリダイレクトを使用します。しかし、スラッグが一意である場合、スラッグはあるがIDのないURLからのリダイレクトも行うのでしょうか?

IDまたはを選択slugして実行するだけです。

1) ID で検索する場合は、スラッグを無視する必要があります (検索エンジン専用です)。ID があれば、「本物の」スラッグに簡単にリダイレクトできます。(切り捨てられた URL などを修正するため)

2) スラッグで検索する場合、スラッグは一意である必要があります。(ほとんどのサイトは、これを簡単にするために日付でスコープします)。スラッグでデータベース ルックアップを実行すると、なぜ URL に ID が必要なのかが明確になりません。(それらは見栄えが悪く、非常に恣意的であるため、それらを削除することをお勧めします。) あなたが提案しているのは、(あなたとコンピューターにとって) 余分な作業ですが、それが役立つかどうかはわかりません。

スラッグと ID のインデックス作成のインデックス サイズ/速度のトレードオフについて心配する必要があるのは、トラフィックの多いサイトだけです。その場合でも、トリックを行うことで差を最小限に抑えることができます。(つまり、スラッグを検索せず、代わりにスラッグの MD5 の最初の 8 文字を検索します。)

于 2013-07-26T03:35:10.663 に答える