Wordpress のようなほとんどの PHP スクリプトで Cookie ログインの問題が発生する理由は何ですか?
これは、WordPress のログイン ページや他の多くの PHP スクリプトでよく見られる問題です。ログインできない場合があり、ブラウザの Cookie データを消去するように指示されます。
この問題の原因となる可能性のあるものと、Web アプリケーション開発でそれを回避する方法を教えてください。
Wordpress のようなほとんどの PHP スクリプトで Cookie ログインの問題が発生する理由は何ですか?
これは、WordPress のログイン ページや他の多くの PHP スクリプトでよく見られる問題です。ログインできない場合があり、ブラウザの Cookie データを消去するように指示されます。
この問題の原因となる可能性のあるものと、Web アプリケーション開発でそれを回避する方法を教えてください。
それはかなり広い質問です。個人的には、Wordpress で経験したことはありませんが、可能性はあります。ユーザーに割り当てられた Cookieのセットが競合状態になり、プログラムが処理方法を認識できなくなる可能性があります。
たとえば、ログイン時に「login」と呼ばれる、ユーザー名を含む Cookie を設定するとします。そして、ログアウト時に「ログアウト」と呼ばれる Cookie を設定し、「ログイン」Cookie を削除するとします。ここで、ログイン画面を表示していて、プログラムが両方の Cookie を受信した場合、失敗してはならないことは明らかです。「ログイン」Cookie は無視できます。しかし、一部のアプリケーションが混乱し、これらの一見矛盾する状況でエラーが発生する場合があります。開発者の仕事は、いつものように防御的にプログラミングすることなので、予期しない入力があっても可能な限り機能します。
私が言うように、私はWordpressでそれを経験したことはありませんが、最近、WPはセッションを使用せず、Cookieのみを使用するため、おそらくより影響を受けやすいことを発見しました. $_SESSION
私が見つけた 1 つの WP ホストは、ホスティング ファーム全体に実装するのが難しいため、まったくサポートしていません。セッションでは、値を設定解除すると、サーバー上で制御できるため、値が消えます。しかし、Cookie の場合、値の設定を解除すると、それは単なる要求であり、ブラウザーがそれを受け入れないか、クライアント側の時間設定が間違って無効な Cookie を存続させる可能性があります。