1

Intelligenicai.URLRewriter.dllを使用して Web サイトの URL を書き換えていますが、正常に動作しています。例として次のリンクをたどりました。

http://anupkumargupta.wordpress.com/2011/05/28/url-rewriting-with-urlrewriter-net-simplest-way-asp-net-c-sql-blog/

別の記事で、URL 書き換えが検索エンジンに問題を引き起こす可能性があることについて読んだことがあります。これは、URL 書き換えなしと URL 書き換えありの 2 つの異なる URL を使用して同じページにアクセスできるようになったためです。(このリンクhttp://thecodebug.com/?p=296を確認してください)

検索エンジンに関する上記のリンクの話は、ウェブサイトで重複したコンテンツを見つけた場合に罰せられる可能性があります. この記事 (http://thecodebug.com/?p=296) では、「ヘッダー内の html canonical リンク」について説明していますが、追加しない場合、この URL が canonical であると検索エンジンに伝えることができます。

今、私の質問は、Intelligenicai.URLRewriter.dll を使用している場合でも、これが当てはまるということです。これが事実である場合、そのようなシナリオを回避するために取るべき予防措置は何ですか。

URL 書き換え を使用した URL の例http://www.xyz.com/Article/en-US/19/87/let-the-spirit-of-our-nation ’s-founders-guide-us.aspx

書き換えなしの URL http://www.xyz.com/Article/ArticleDetails.aspx?Language=en-US&PageID=19&ArticleID=87

web.config の一部

  <rewriter>
    <rewrite url="~/Article/(.+)/(.+)/(.+)/(.+).aspx" to="~/ArticleDetails.aspx?Language=$1&amp;PageID=$2&amp;ArticleID=$3" processing="stop"/>
  </rewriter>
4

1 に答える 1

1

2 つのルールを追加できます。1 つは物理 URL への新しいスタイルのリンクを書き換えてルールの処理を停止し、その後 aspx ページへの直接要求を新しいスタイルの URL に書き換えるルール、301 パーマネント リダイレクト、および処理を停止するルールに従います。ルール。301リダイレクトは重要です!書き換える DLL でそれを行うことができない場合は、古いページをクエリ文字列として受け入れるか、リファラーを参照する特別な隠しページに URL をリダイレクトしてから、そこに 301 リダイレクトします。

更新:ここにいくつかの詳細情報があります:

Intelligenica UrlRewriter を使用して、次の順序で 2 つのルールを設定します。

最初のルールは、派手な URL を物理ファイルにリダイレクトするために既に設定したルールを使用します。

2 番目のルールは、物理ファイルへのパスを取得し、(a) 404 または (b) 301 のいずれかでファンシー URL に永続的にリダイレクトします。1 つのページで複数ページのコンテンツを提供している場合は、404 エラーで処理を停止した方がよい場合があります。また、サイトのどこにも古いスタイルのリンクを使用しない限り、問題はありません。古いスタイルのリンクを (URL を書き直す前に) 使用した場合はいつでも、新しいスタイルの URL が強制されるように、ページをリダイレクトまたは 404 するように設定を書き換えていることを確認する必要があります。

<rewriter>
    <rewrite url="~/Article/(.+)/(.+)/(.+)/(.+).aspx" to="~/ArticleDetails.aspx?Language=$1&amp;PageID=$2&amp;ArticleID=$3" processing="stop"/><!-- rewrites URL -->
    <rewrite url="~/ArticleDetails.aspx?Language=(.+)&amp;PageID=(.+)&amp;ArticleID=(.+)" to="~/Article/$1/$2/$3.aspx" processing="stop" permanent="true" /><!-- Redirects old page to new url with 301 -->
</rewriter>

お役に立てれば。

于 2012-05-07T05:25:44.553 に答える