ホームページ >バックエンド開発 >PHPチュートリアル >会話を理解する方法を鮮やかに説明できる人はいますか? 例を挙げていただけますか?

会話を理解する方法を鮮やかに説明できる人はいますか? 例を挙げていただけますか?

WBOY
WBOYオリジナル
2016-08-04 09:21:40938ブラウズ

ブラウザがページを開くたびに、新しいセッションが確立されたものとしてカウントされますか?

返信内容:

ブラウザがページを開くたびに、新しいセッションが確立されたものとしてカウントされますか?

セッションは特定の継続的なアクセス状態を維持します。最初に http://www.xxx.com/1/ を開き、次に http://www.xxx.com/2/ を更新します。サーバー側であなたが同一人物であることをどうやって知ることができますか? IPv4 は信頼性が低く、複数のレベルの非透過的プロキシを経由する場合は、外部 IP が 1 つしかない可能性があります。

しかし、ステータスを維持したいというこの欲求は難しい欲求であり、一般的には解決できます。そうであれば、すべてのリクエストに一意の ID を示す ID が付いている限り、最初にそれが付いていなければ、それを彼に割り当てるだけで完了することがわかりました。特定の実装では、通常、この ID は Cookie を介して URL に渡されるか、SessionID としても使用されます。通常、さまざまなサーバー環境には、通常 PHPSESSID と呼ばれる PHP、通常 jsessionid と呼ばれるサーブレットなどの固定名が付けられます。もちろん、「IDを識別する」という目的を達成するのであれば、別の名前を選択することもできます。

サーバー側のSESSIONについて話しましょう。 SESSION の場合、サーバーは Key-Value データベースを持つことと同等です。このライブラリは、ファイル システムまたは他のリレーショナル データベースまたは Key-Value データベースにすることができます。ブラウザによって送信された SessionID を通じて、対応するセッション データが取得されます。このデータは一般にセッション データと呼ばれます。


「ブラウザがページを開くたびに、それは新しいセッションの確立としてカウントされますか?」とおっしゃいましたが、これは良い質問です。実際には、セッションのライフサイクルについて説明します。 1 つはセッション ID の有効期間、1 つはセッション データの有効期間です。

セッション ID のライフ サイクル: 現在、SessionID を渡す最も一般的な方法は、Cookie を介して渡すことです。Cookie レコードには、おそらく名前、値、パス、ドメイン名、有効期限などのいくつかの属性があります。「オープン」について言及しました。ページ」を「ブラウザを開く」に修正する必要があると思います。この有効期限は通常セッション期間と呼ばれます。つまり、ブラウザを閉じて再度開くと、元の Cookie が無効になります(つまり、もう渡されません)。ただし、すべての SessionID の有効期限をこのようにする必要はありません。セッション ID Cookie の有効期間を設定でき、アクセスするたびにこの期間を延長できるため、ブラウザを閉じて再度開いた場合でも、ユーザーは継続できる限り有効です。手動で Cookie をクリアすることはなく、ステータスを記憶し続けます。

セッションデータのライフサイクル: サーバー側で、セッションの有効期限を設定することもできます。30 分以上読み取りまたは書き込みがない場合、セッションは無効になります (つまり、削除されるか返されません)。もちろん、サーバーソフトウェア環境が異なれば、今回のデフォルト設定や設定方法も異なる可能性があります。


ログインについて話しましょう。

ユーザーのログインはこのセッションと何の関係がありますか?簡単に言うと、ログインとは、ユーザー ID をセッション データに記録することを意味します。これにより、現在の SessionID がユーザー (ID) に直接関連付けられます。もちろん、必要に応じて、SessionID をユーザー ID とまったく同じにすることもできます (できれば同じです)。暗号化または難読化)。

セッションは必ずしもログインステータスに関係するわけではありません。たとえば、電子商取引 Web サイトにアクセスした場合、ログインしなくても商品をショッピング カートに入れることができます。電子商取引 Web サイトの場合、ユーザーは買い物をすることができます。カート データは、Session、Cookie、LocalStoreage、または SesisonStoreage で使用できます。最初のデータはサーバー側で、2 番目のデータはクライアント側とサーバー側で同期的に配信され、最後の 2 つは純粋なクライアント側です。どのような方法であっても、現時点では、電子商取引 Web サイトが知る必要があるのは、一時的な顧​​客 ABCDEF (SessionID) がこの一連の情報を取得したことだけです。チェックアウトする場合は、自分自身を識別するためにログインする必要があります。すでに入力した住所に行って支払い、発送することができます。この e コマース販売者が、今後あなたとの取引はあまりなく (1 回限りの販売)、あなたが誰であるかを知りたくないと考えており、支払いプロセスが非常に簡単である (QR コードをスキャンする) 場合は、 、彼はあなたがログインする必要はまったくありません。

最も明白な例は、多くの広告プラットフォームがあなたの Cookie を追跡するためのコードをあらゆる場所に埋め込んでおり (実際、それらはあなたの閲覧ステータスや閲覧履歴の一部を記録し、分析しています)、あなたがどの Web サイトにアクセスしたか、どのコンテンツが気に入っているかを知ることができます。ターゲットを絞った広告をプッシュできます。しかし、不必要なトラブルを避けるために、彼はあなたが誰であるかを知りたくない(またはあなたに自分の存在を知られたくない)ので、この場合、あなたにログインダイアログボックスを表示する必要はありません。プラットフォームは「匿名」ですが、それでも彼はあなたについて多くのことを学ぶことができます。


私はインターネット広告の分野で長年開発を行ってきたため、他の人に広告の例を説明するたびに、閲覧履歴を「追跡」するために Cookie を「植える」にはどうすればよいでしょうか?

そうではありません。

広告プラットフォームはコンテンツ Web サイトと連携し、コンテンツ Web サイトに小さなコードを埋め込むことができます。つまり、このページを開くと、ブラウザは広告プラットフォームに URL アドレスをリクエストします。広告プラットフォームは、このリクエストによってもたらされたパラメータ、リファラーなどを使用して、どのタイプの URL かを分析します。見ているコンテンツ、滞在時間など。待って、必要な情報を記録し、興味や趣味を分析します。たとえば、あなたが携帯電話のレビュー Web ページをよく読んでいる場合、広告プラットフォームは、あなたが最近スマートフォンを気に入っているという結論を導き出し、これに基づいてあなたが低価格の携帯電話を好むのか、それとも高価格の携帯電話を好むのかを分析し、そのようにタグ付けすることもできます。広告を受け取ることができるため、自分の興味に合った広告をプッシュすることに集中できます。

言い換えれば、トラッキングコードのないウェブサイトはあなたの動きを追跡することができません。

悪いニュースですが、これはすべて無駄だと思いますか?

では、「守る」方法はあるのでしょうか?答えは「はい」です。一般的に、訪問する Web サイトのドメイン名は広告プラットフォームのドメイン名と一致しないためです。入力するのが面倒です。http://baike.sogou.com/ を参照してください。 v63400314.htm?fromTitle= する+しない+追跡

もちろん、「悪魔はタオと同じくらい高い」という言葉があるように、この「戦争」は簡単には終わりません。


兄さん、そんなに書くのは簡単ですか?ぜひ高評価をお願いします^_______^。

あなたは路上で女の子に会いました。それは会議や会話ではなく、会議であったことに注意してください。連絡先 (つまり、session_id) があり、電話番号を残した場合、セッションには価値があります。女の子の服に触れても肌に触れない場合は、その女の子があなたのガールフレンドでない限り、あなたはセッション ID を持っていないことを意味します

同じ意味かもしれませんが、セッションの代わりにセッションを理解することができます
その後、セッション + Cookie を理解してください

私の理解では、ブラウザを開いて Web サイトにアクセスするとセッションが開始され、それ以降の Web サイトへのアクセスは、ブラウザを閉じて終了するまでこのセッションでカウントされます。

これは可能かどうかは計算されませんが、Web サイトに入ってバックエンドにセッ​​ションを追加すると、それはセッションとしてカウントされます。しかし、ほとんどの Web サイトはこれを行いません。通常、ログイン後にユーザー名に基づいてセッションが追加されます (そのため、ほとんどの Web サイトでは、ユーザーの情報をすべて記録するためにログインが必要です (バックエンド)。必要に応じて必要なデータをセッションに入力する必要があります (コードは自分で記述する必要があります)。これらのデータはこの人にとって公開データであり、ほとんどの場所で直接使用できます

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。