0

Wordpress のようなほとんどの PHP スクリプトで Cookie ログインの問題が発生する理由は何ですか?

これは、WordPress のログイン ページや他の多くの PHP スクリプトでよく見られる問題です。ログインできない場合があり、ブラウザの Cookie データを消去するように指示されます。

この問題の原因となる可能性のあるものと、Web アプリケーション開発でそれを回避する方法を教えてください。

4

1 に答える 1

1

それはかなり広い質問です。個人的には、Wordpress で経験したことはありませんが、可能性はあります。ユーザーに割り当てられた Cookieのセットが競合状態になり、プログラムが処理方法を認識できなくなる可能性があります。

たとえば、ログイン時に「login」と呼ばれる、ユーザー名を含む Cookie を設定するとします。そして、ログアウト時に「ログアウト」と呼ばれる Cookie を設定し、「ログイン」Cookie を削除するとします。ここで、ログイン画面を表示していて、プログラムが両方の Cookie を受信した場合、失敗してはならないことは明らかです。「ログイン」Cookie は無視できます。しかし、一部のアプリケーションが混乱し、これらの一見矛盾する状況でエラーが発生する場合があります。開発者の仕事は、いつものように防御的にプログラミングすることなので、予期しない入力があっても可能な限り機能します。

私が言うように、私はWordpressでそれを経験したことはありませんが、最近、WPはセッションを使用せず、Cookieのみを使用するため、おそらくより影響を受けやすいことを発見しました. $_SESSION私が見つけた 1 つの WP ホストは、ホスティング ファーム全体に実装するのが難しいため、まったくサポートしていません。セッションでは、値を設定解除すると、サーバー上で制御できるため、値が消えます。しかし、Cookie の場合、値の設定を解除すると、それは単なる要求であり、ブラウザーがそれを受け入れないか、クライアント側の時間設定が間違って無効な Cookie を存続させる可能性があります。

于 2012-12-07T11:33:33.217 に答える