1

スパイダーは一般的に JavaScript を実行しないため、年齢確認が必要な Web サイトのコンテンツを正常にインデックス化するために、以下のオプションのいずれかを使用することを考えています。

私の好みの解決策:

Cookie ' ageverification' をチェックしています。存在しない場合は、JavaScript を追加してユーザーを ~/verifyage.aspx にリダイレクトします。これにより、必要な Cookie が追加され、ユーザーが前のページにリダイレクトされます。

別の解決策:

上記と同様ですが、ユーザーをリダイレクトしません。代わりに、Cookie が存在しない場合は、既存のページの「上に」年齢確認フォームを描画します。

別の解決策:

クローラーがたどることができる「はい、私は 18 歳以上です」というアンカー リンクを追加します。私はこれの合法性について少し懐疑的です。

洞察やアイデアは大歓迎です。

4

2 に答える 2

2

私がすること - 年齢確認をセッションデータに保存します。セッション変数が存在しない場合、サーバーは本体の末尾 (フッターの後) に div を追加し、クリックして確認するか、クリックして終了します。CSS を使用してコンテンツをカバーします。

CSSの場合-私は次を使用します:

display: block; width: 100%; height: 100%; position: fixed; top: 0px; left: 0px; z-index: 9999;

これにより、本体の最後に配置されていても、グラフィカル ブラウザーで div が他のすべてのコンテンツをカバーします。

JS が有効になっていないユーザーの場合、「Enter」リンクは、セッション変数を設定し、要求したページにユーザーを戻す Web ページを指します。その結果、必要なコンテンツに到達するためにブラウザーの 2 ページの読み込みが発生しますが、これは理想的ではありませんが、非 JS 対応ブラウザーでこれを行う唯一の方法です。

JS 対応ブラウザの場合、「Enter」リンクの href リンクを # に変更し、非常に基本的な関数をクリック イベントに添付する小さな JavaScript がページに添付されます。人は「Enter」をクリックしました。次に、サーバーはセッションを更新し、XMLHttpRequest に 200 OK 応答で応答し、JavaScript をトリガーして、コンテンツをカバーする年齢確認 div を非表示にします。したがって、セッションが更新されるため、サーバーはユーザーが年齢を確認したことを認識し、ユーザーはブラウザーでページをリロードすることなく必要なコンテンツを表示できるため、ユーザー エクスペリエンスが大幅に向上します。

したがって、年齢確認は、ステートレスな方法で、または JavaScript を使用したより使いやすい方法でユーザーを確認ページに送信することにより、JavaScript を使用せずに機能します。

検索スパイダーがサイトをクロールすると、スパイダーには必要なセッション変数が設定されないため、すべてのページで年齢確認 div が取得されますが、div は html 本文の最後にあるため、スパイダーは実際のコンテンツを最初にインデックス付けします。 .

于 2011-10-31T05:17:57.497 に答える
1

いずれにせよ、あなたは本当の問題を抱えています。

サイトの年齢確認済みの部分にクローラーを入れると、そのコンテンツがインデックスに登録されます。つまり、検索するユーザーにそのスニペットを提示します。年齢確認を行っていない方。Google の場合、これは、ユーザーがスクリーナーを経由せずに、ベリファイウォールの背後にあるコンテンツ全体に実際にアクセスできることを意味します。ユーザーは、Google キャッシュからコンテンツを取得できます!

勝てない状況、ごめんなさい。年齢確認済みのコンテンツまたは SEO のいずれかを使用してください。両方を使用することはできません。何らかの方法で検索エンジンにコンテンツを吐き出さないように指示したとしても、URL が検索結果に表示されるという事実だけで、サイトの (制限された) コンテンツについて人々に伝えます。

さらに、あなたの JavaScript のアイデアについて: これは、JavaScript を無効にしているユーザーは、クリックスルーが必要であることさえ知らずにコンテンツを取得することを意味します。また、バナーを一番上に表示した場合、それは、彼らが受け入れる前に不快なコンテンツをコンピュータに送信したことを意味します. つまり、ブラウザのキャッシュにあるということです。あるいは、あなたのバナーをハッキングして、[OK] をクリックせずに、あなたが隠していたものを手に入れることもできます。

あなたのウェブサイトが何をしているのかはわかりませんが、成熟したものを見ることができるようになる前に、フォームを投稿するようユーザーに強制することを強くお勧めします. 承認ステータスをセッション変数に保存します。それは偽造できません。検索エンジンも十分に古いものでない限り、検索エンジンを許可しないでください。または、検索エンジンが見たもので何をするかを制限する強力な方法と、自分の責任に関する強力な情報がある場合を除きます。

于 2010-07-09T11:19:12.810 に答える