ホームページ > php教程 > php手册 > Cookie とその使用 (1)

Cookie とその使用 (1)

WBOY
リリース: 2016-06-21 09:10:30
オリジナル
883 人が閲覧しました

クッキー

Cookie テクノロジーは、その誕生以来、多くのインターネット ユーザーと Web 開発者にとって議論の焦点となってきました。一部の上級 Web 専門家を含む一部のインターネット ユーザーは、Cookie テクノロジーの機能が弱すぎるため、またはその他の技術的なパフォーマンス上の理由からではなく、単に Cookie の使用が害を引き起こすと感じているためです。ネットワークユーザーのプライバシーに影響します。 Cookie は Web サーバーによってユーザーのブラウザに保存される小さなテキスト ファイルであるため、ユーザーに関する情報 (識別番号、パスワード、ユーザーが Web サイトで購入した方法、ユーザーがサイトにアクセスした回数など) が含まれています。 。

では、Cookie テクノロジーとは一体何でしょうか?それは本当にインターネット ユーザーの個人的なプライバシーに害をもたらすのでしょうか?回答する前に以下の内容を読んでみましょう。

(1) Cookie テクノロジーの概要

WEB テクノロジーの発展の歴史において、Cookie テクノロジーの登場は大きな変化です。まず、Netscape は Netscape Navigator ブラウザに Cookie テクノロジを導入しました。それ以来、World Wide Web Association が Cookie 標準をサポートし始めました。その後、Microsoft による精力的な推進の後 (Microsoft の IIS Web サーバーで使用される ASP テクノロジが Cookie テクノロジを多用していたため)、Cookie テクノロジは Microsoft の Internet Explorer ブラウザで完全にサポートされるようになりました。これまでのところ、ほとんどのブラウザは Cookie テクノロジーをサポートしているか、少なくとも Cookie テクノロジーの使用と互換性があります。

1) クッキーとは何ですか?

Netscape の公式ドキュメントの定義によれば、Cookie はサーバーまたはスクリプトが HTTP プロトコルの下でクライアントのワークステーション上の情報を維持するための方法です。 Cookie は、Web サーバーによってユーザーのブラウザに保存される小さなファイルで、ユーザーに関する情報 (識別番号、パスワード、ユーザーが Web サイトで購入した方法、ユーザーがサイトにアクセスした回数など) が含まれています。ユーザーがサーバーに接続するたびに、Web サイトは Cookie 情報にアクセスできます。

平たく言えば、ブラウザは Cookie をサポートするために 1 つ以上の限定されたファイルを使用します。これらのファイルは、Windows オペレーティング システムを使用するマシンでは Cookie ファイルと呼ばれ、Macintosh マシンではマジック Cookie ファイルと呼ばれ、Web サイトで Cookie データを保存するために使用されます。 Web サイトはこれらの Cookie ファイルに情報を挿入することがありますが、これにより一部のインターネット ユーザーに副作用が生じる可能性があります。一部のユーザーは、これが個人のプライバシーの侵害を引き起こすと信じており、さらに悪いことに、Cookie は個人空間の侵害であり、ユーザーのコンピューターにセキュリティ上の危険を引き起こす可能性があると考えています。

現在、一部の Cookie は一時的なものであり、その他は永続的なものです。一時 Cookie は、指定された期間だけブラウザに保存され、指定された期間が経過すると、Cookie はシステムによって消去されます。たとえば、PHP では、ユーザーが Web サイトを離れるまでユーザーの進行状況を追跡するために Cookie が使用されます。永続的な Cookie はユーザーの Cookie ファイルに保存され、次回ユーザーが戻ったときにも呼び出すことができます。

Cookie を Cookie ファイルに保存すると、やりすぎて大きな問題が発生すると考えるユーザーもいます。その主な理由は、一部のユーザーが、ユーザーがどの種類のサイトを訪問するのが好きか、どのようなアクティビティに参加するのが好きかなど、ユーザーのオンラインサーフィンの習慣が Cookie によって追跡されるのではないかと懸念しているためです。このような個人情報が、ひとたび下心を持つ者の手に渡った場合、その個人が大量の広告ゴミの対象となったり、思わぬ被害に遭ったりする可能性があると危惧しています。しかし、Webサイト外のユーザーはWebサイト全体のCookie情報を取得することができないため、そのような心配は全くありません。したがって、この目的で Cookie を使用することは不可能です。しかし、一部のユーザーの誤解や「誤った噂」のため、一部のブラウザ開発者は慣れた対応をせざるを得ません (たとえば、Netscape Navigator 4.0 と Internet Explorer 3.0 は両方とも Cookie をブロックするオプションを提供しています)。

Cookie テクノロジーを長い間待ち望んでいた結果、多くのブラウザー開発者はブラウザーで Cookie を柔軟に制御する必要がありました。たとえば、現在主流の 2 つのブラウザである Netscape Navigator と Internet Explorer は、次の方法で Cookie を処理します。Netscape Navigator 4.0 は警告のために Cookie を受け入れるだけでなく、Cookie をブロックすることもできます。Internet Explorer 3.0 は Cookie をブロックすることもできますが、Internet Explorer 4 では Cookie をブロックできます。 0 では、ブロック オプションを提供せずに警告のみを受け入れることができますが、Internet Explorer 4.0 以降の更新バージョンでは、Cookie をブロックするオプションが追加されました。

さらに、最新テクノロジーの多くは、Cookie をブロックできないブラウザでも Cookie をブロックできます。たとえば、Cookie ファイルをさまざまなタイプに設定することで、Cookie の使用を制限できます。ただし、残念ながら、Cookie を完全にブロックしたい場合は、多くのサイト ページが確実に拒否されることになります。今日、多くの Web サイト開発者が Cookie テクノロジの強力な機能に夢中になっているため、たとえば、Session オブジェクトの使用は Cookie のサポートから切り離すことができません。

今日でも一部のインターネット ユーザーは依然として Cookie について議論していますが、大多数のインターネット ユーザーは依然として Cookie を受け入れる傾向があります。したがって、Web ページの開発には Cookie テクノロジーを安全に使用できます。

2) Cookie はどのように機能しますか?

Cookie を理解するには、Cookie がどのように機能するかを知ることが不可欠です。一般に、Cookie は HTTP ヘッダーを通じてサーバーからブラウザに返されます。まず、サーバーは応答内の Set-Cookie ヘッダーを使用して Cookie を作成します。次に、ブラウザーは、作成した Cookie を Cookie ヘッダーを通じてリクエストに含めてサーバーに返し、ブラウザーの引数を完了します。

例えば、訪問者の情報を含めるためにloginという名前のCookieを作成しました。Cookieを作成するとき、サーバー側のヘッダーは次のようになります。訪問者の登録名は「Michael Jordan」であると想定されます。 Cookie には、パス、ドメイン、有効期限などの Cookie 属性も指定されます。

Set-Cookie:login=Michael Jordan;path=/;domain=msn.com;
expires=Monday,01-Mar-99 00:00:01 GMT

上記のヘッダーはブラウザ コンピュータに自動的に表示されますCookie ファイルへのレコード。ブラウザは、変数名「login」を持つ Cookie の値を「Michael Jordon」に割り当てます。実際の配信プロセス中に、この Cookie の値は URLEncode メソッドの URL エンコード操作を受けることに注意してください。
Cookie 値を含む HTTP ヘッダーがブラウザーの Cookie ファイルに保存された後、ヘッダーはリクエストを介したパスを無視して Cookie をサーバーに返すようにブラウザーに通知し、ブラウザーの認証操作を完了します。

さらに、当社は Cookie の使用を制限するために Cookie のいくつかの属性を使用します。たとえば、ドメイン属性はブラウザ側で Cookie の送信を制限でき、Cookie は指定されたサーバーにのみ送信され、www.hp.com などの他の Web サイトには送信されません。 Expires 属性は、Cookie が保存される期間を指定します。たとえば、上記の Cookie は 1999 年 3 月 1 日にブラウザに 1 秒間だけ保存されます。もちろん、ブラウザ上の Cookie が多すぎて、システムで許可されている範囲を超えた場合、ブラウザはそれらを自動的に削除します。属性 Path に関しては、Cookie がサーバーに送信されるディレクトリ パスを指定するために使用されます。

注: ブラウザが Cookie を作成すると、この Web サイトに対するすべてのリクエストのヘッダーにこの Cookie が含まれますが、他の Web サイトからのリクエストの Cookie は送信されません。そしてブラウザは Cookie の有効期限が切れるまで送信し続けます。



関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のおすすめ
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート