私は PHP でいくつかのソフトウェアに取り組んでおり、HTTP キャッシュを効果的に利用できるようにしようとしています。ただし、最近発生している問題の 1 つは、ログイン後、ログイン前にアクセスしたページがキャッシュされ、ログインしたように動作しないことです。
これは、PHP とクライアントの間に HTTP キャッシュがある場合に特に問題になります。キャッシュ リミッターを常に「パブリック」に設定すると、ページはおそらく常に (プロキシ キャッシュによっても) キャッシュされます。ログインしていないときはキャッシュ リミッターを「パブリック」に、ログインしているときは「プライベート」に設定すると、で、私が現在抱えている問題はおそらくまだ発生するでしょう。キャッシュ リミッターを常に非公開に設定すると、プロキシ キャッシュはまったく役に立たなくなり、現在抱えている問題はおそらく依然として発生します。
この問題の理想的な解決策は何ですか? ユーザーがログインした後、Web ブラウザーを「再試行」させる方法はありますか? プロキシ キャッシュの場合、受信 Cookie に基づいてキャッシュする方法があることはわかっているので、問題の一部を解決できると思います。しかし、Web ブラウザーの観点から見た問題はどうでしょうか。