-1

私は非常に多くのウェブサイトを見てきましたが、ページを開いたときに、URL に数値 ID やこのようなものがなく、単語の間にハイフン (-) を含む URL 文字列だけです。これは、ページがデータベースから文字列に基づいてデータを取得していることを意味します。また、一部の URL は非常に長いものです。これは、データベース内のそのフィールドにインデックスが存在しない可能性があることを意味します (非常に長いため)。では, それは効率的な方法ですか? そうでない場合, なぜ多くのサイトがこの方法を使用するのでしょうか?

4

3 に答える 3

2

このサイト (stackoverflow) のような一部のサイトでは、URL に数値インデックスと文字列正規タイトルの両方を使用するハイブリッド アプローチが使用れています。この同じページの URL のように:

stackoverflow.com/questions/15221783/is-it-efficient-way-to-get-all-the-page-data-on-the-base-of-url-string
//          Numeric index -----^                ^-------- canonical title

このようにして、高速な数値インデックスとセマンティックなセマンティックな標準文字列タイトルの両方の長所を活用できます。

于 2013-03-05T10:52:36.057 に答える
0

たとえば、文字列の最初の 15 文字のみをインデックス化できるため、非常に効率的です。ただし、ページ タイトルは編集可能ですが、一意のページは一意の URL でアドレス指定する必要があるため、このアプローチは一般的に間違っています。

質問のタイトルを編集すると、古い URL が正しいページに戻ります。
ご指摘のシステムの場合、タイトルを編集すると元に戻せません。
したがって、優れたサイトではこれを使用することはありませんが、stackoerflow のように、一意のインデックスとスラッグの両方を使用します。

于 2013-03-05T10:53:11.893 に答える
-1

フレームワークのルーティング システムがほとんどの検索作業を省くため、非効率的ではありません。たとえばproducts/en-gb/mens/shirts/light-blue-full-sleeve-twill-shirt、製品カテゴリ、en-gb、メンズ、シャツの順に分類できます。これらのカテゴリは相互にリンクされ、製品はシャツ カテゴリにリンクされているため、データベース全体を検索するわけではありません。 、しかしいずれにしてもそのサブセットです。

また、サイトに何百万ものページやカテゴリがない限り、データベースは、まばたきする前に数千のレコードを簡単に検索できます。

于 2013-03-05T10:51:28.660 に答える