8

Webページがユーザーにログインを要求するコンテンツを提供する場合、ユーザーに自分自身を認証させるには2つの方法があります。

  1. WebアプリケーションはURLを保存してから、別のログインページにリダイレクトし、認証が成功すると、保存されているURLにリダイレクトします。

  2. 保護されたコンテンツの代わりに、ページにログインフォームが表示され(同じURLにとどまります)、ログインアクションが成功すると、ページが更新され、実際のコンテンツが表示されます。

私は次のことを知りたいです:

  • オプション1を使用する場合、使用する正しいhttpステータスコードは何ですか?(302はおそらく正しいものなので、完全を期すためにのみこの質問をここにリストします。)
  • オプション2の適切なhttpステータスコードは何ですか?401は魅力的ですが、http認証を使用したくありません。
    • サブ質問:http認証がそれほど一般的でないのはなぜですか?
  • クローラーが保護されたコンテンツのタイトル、キーワード、説明、およびその他のメタデータをログインフォームに関連付けないようにするにはどうすればよいですか?

そして実際、これは私が本当に知りたいことです:

  • 上記の場合、httpステータスコードはまったく重要ですか?適切なステータスコードを使用することによる実用的なメリットはありますか?
4

1 に答える 1

2

オプション1を使用します。これは、ログインが必要なすべてのURLにフォームを表示すると、次の2つの問題が発生するためです。

  1. 検索エンジンは、ログインフォームが実際のコンテンツではなく、そのURLの実際のコンテンツであると見なします。明らかに、それはあなたが望むものではありません。
  2. グーグルはこれらのページのすべてがコンテンツを複製しているのを見るでしょう、それは悪いことです。彼らのPandaアルゴリズムは、特に多くの重複コンテンツを対象としているため、サイト全体が低品質のコンテンツに対してペナルティを受ける可能性があります。

すでに発見しているように、302リダイレクトを使用するのが正しい方法です。そして、適切なステータスコードを使用することは重要です。検索エンジンはその意味を解釈し、間違ったステータスコードを送信すると、悪影響が生じる可能性があります。適切なHTTPステータスコードを送信するのは簡単なので、間違いなく行う価値があります。

于 2012-05-26T15:47:34.150 に答える