私はC#のコンポーネントに取り組んでおり、同じユーザーが再訪したことを確認しながら、自分のWebサイト/ページを閲覧したユニークな閲覧者の数を2回記録しないようにしています。そのようなコンポーネントを書くための効率的な方法は何ですか?Cookieまたはセッションオブジェクトを追跡しますか?彼らのIPアドレス(静的ではない)またはコンピューター名を記録しますか?この情報はデータベースに保存されます(私が知る限り)
ありがとう。
私はC#のコンポーネントに取り組んでおり、同じユーザーが再訪したことを確認しながら、自分のWebサイト/ページを閲覧したユニークな閲覧者の数を2回記録しないようにしています。そのようなコンポーネントを書くための効率的な方法は何ですか?Cookieまたはセッションオブジェクトを追跡しますか?彼らのIPアドレス(静的ではない)またはコンピューター名を記録しますか?この情報はデータベースに保存されます(私が知る限り)
ありがとう。
なぜ車輪の再発明をするのですか?Google Analyticsを使用する-無料で、実装が非常に簡単で、これまでにないほど多くの統計を提供し、(Cookieを使用して可能な限り)一意の訪問者統計を提供できます。本当にデータをデータベースに保存する必要がある場合(なぜですか?)、Google Analytics APIを使用してデータを取得し、必要な処理を実行できます。
はい、IPアドレスを記録できます。従来のログインスキームを使用している場合(メンバーシップユーザーを使用している場合)、このリンクがガイドになります。IPを収集する方法を説明するIPに関するこの質問を確認してください。ホストマシンのMACを取得して、一意の訪問者の追跡を簡単に判断できるようにすることは悪い考えではありません。
同じIPの背後に何百人もの人がいる可能性があるため、IPを記録することは悪い考えだと言われていますが、これは事実ですが、IPアドレスを使用すると統計的に意味のある数値が得られます。
アプリケーションが一意であることを保証することがコアである場合、残念ながら、それを保証された方法で行うことはできません。
多くの人が実際にNATを使用してローカルネットワークからインターネットにアクセスするため、IPアドレスを記録することはお勧めできません。すべての人が同じパブリックIPアドレスを持っているため、非常に多くの人が1人の人間のように見えます。イントラネットを使用している場合、これは機能する可能性がありますが、公開Webサイトでは機能しません。
より良い解決策は、ユーザーのコンピューター上のCookieにGUIDを書き込み、データベースに保存することです。次に、将来そのCookieを再度探し、データベースの値と比較します。
一意のIPを持つ組織があり、そのIPの背後に何百人もの人々がいる可能性があるため、IPアドレスによる一意の訪問は常に問題になります。
クッキーが最善の策だと思います。
統計または分析パッケージを使用しない理由があると思いますか?
IPアドレスとCookieの両方にトレードオフがあります。1人のユーザーがwifiホットスポットからwifiホットスポットに移動し、IPメトリックを破棄している可能性があります。多くのユーザーが同じIPアドレス(雇用者、ISP、プロキシなど)の背後にいる可能性があります。したがって、IPアドレスは完全に正確ではありません。
一方、単一のIPの単一のユーザーが複数のブラウザーまたはデバイスを介してWebサイトにアクセスする可能性があるため、Cookieは完全に正確ではありません。
そして、自宅や職場からあなたのウェブサイトにアクセスするユーザーはどうですか?1人の訪問者、2人の(少なくとも)一意のCookieとIPアドレス。
自分に最適な無効なデータを選択してください。