個人的には、文字数が最も少ない URL 構造を使用します。たとえば、次のようになります。
http://www.example.com/maternity-jeans
これはきれいなだけでなく、「ストア」や「カテゴリー」などの無駄な単語が少ないため、SEO にも優れています。また、サイトが ASP.NET 上に構築されていることが明らかにならないため、セキュリティ面でもわずかに優れています。
この URL 構造を実現するには、通常、Helicon ISAPI rewriteを使用することを選択します。専用サーバーを使用している場合は、無料バージョンを使用できる可能性があります。それ以外の場合は、99 ドルの料金がかかります。
もう 1 つの方法は、IIS URL 書き換えを使用することです。これらを使用するには、IIS 7 以降を実行する必要があります。
すべてのカテゴリが読み込まれる単一のカテゴリ ページがあると思いますか? 以下の例では、「category.aspx」と呼びます。
以下の 2 つのルールは、カテゴリの名前をキャッチし、それを "category.aspx" ページのクエリ文字列パラメーターとして渡します。これを使用して、データベースにクエリを実行し、ページをレンダリングできます。
ヘリコン ISAPI:
RewriteRule ^/(.*)$ /category.aspx?name=$1 [L]
IIS URL の書き換え:
<rule name="Category" stopProcessing="true">
<match url="(.*)" />
<action type="Rewrite" url="category.aspx?name={R:1}" />
</rule>
上記の URL 構造が私の好みですが、サイトの他のページの URL を考慮する必要があるかもしれません。上記のルールは任意の URL を取り、それがカテゴリであると想定します。明らかに、すべての URL がカテゴリになるわけではありません。
この場合、いくつかのオプションがあります。カテゴリであることを識別するために、一意の単語または文字を含めることができます。たとえば、次のようになります。
http://www.example.com/c/maternity-jeans
これにより、書き換えが変更されます。
ヘリコン ISAPI:
RewriteRule ^/c/(.*)$ /category.aspx?name=$1 [L]
IIS URL の書き換え:
<rule name="Category" stopProcessing="true">
<match url="c/(.*)" />
<action type="Rewrite" url="category.aspx?name={R:1}" />
</rule>
または、サイトのスクリプトを使用してすべてのページを実行し、URL に基づいて表示しているページの種類を特定し、適切なコンテンツをレンダリングすることもできます。
現時点でサイトがどのように機能しているか、および変更を加える準備ができているかどうかに大きく依存します.