0

ユーザーのごく一部しかアカウントを持っていないため、ログアウト時に基本的にすべてのページをキャッシュするために本番アプリで akamai を使用しようとしています。ただし、ログインしているユーザーにページのキャッシュされていないバージョンを提供できるようにしたいと考えています。

次のようなものを使用して、コントローラーでこれを行うことができるようです。

headers['Edge-control'] = "no-cache, no-store"

これは機能しますか?おそらくラックのような下位レベルから、これを処理するより良い方法はありますか? 標準的なプラクティスを見つけるのに苦労しています。

ありがとう!

4

4 に答える 4

2

私はアカマイとワードプレスでこの状況に対処しました。アカマイがヘッダーを尊重する場合でも、ログインを追跡するために使用するのと同じ Cookie に基づいてルールを作成する方がおそらくより堅牢です。Cookie が存在しない場合、ユーザーはログインしていません。ヘッダー ベースのソリューションは、サイレント エラーが発生しやすく、正しい動作を検証するためにより多くの労力が必要になります。

于 2014-08-31T20:16:03.857 に答える
1

はい、実際にヘッダーでこれを行うことができます。

Edge-Control: no-store を送信するだけ

実際、Akamai は応答ヘッダーを調べています...他にどのようにオリジンからのキャッシュ制御ヘッダーを尊重できますか...これは非常に一般的な構成設定です。

于 2014-08-29T08:40:21.997 に答える
0

user3995360 が述べているように、Cookie を使用して Akamai に結果をキャッシュしないように指示する方がよいでしょう。これにはいくつかの理由があります。

  1. Akamai にページのキャッシュ バージョンがある場合、ログインしているユーザーにはそれが提供されます。サーバーは別のヘッダーを送信する機会がありません。
  2. There's nothing to tell Akamai why the header is different for some requests - if your logged in user managed to get the no-store header, and then an anonymous user caches the page, you're back to point 1.

That being said, when I've done this in past we've had to involve the Akamai Consultants to enable this feature on our setup.

于 2015-01-21T16:18:55.477 に答える