Cache-Control ヘッダを使用すると、コンテンツを直ちに有効期限切れにしたり、キャッシュ機能全体を無効にしたりすることができます。キャッシュされたページレット/ポートレット コンテンツが複数のユーザ間で共有可能かどうかは、このヘッダの値により決まります。
| public | 同一の基本設定を使用する複数のユーザ間で、キャッシュされたコンテンツを同一のポータル サーバを使用して共有できるようにします。この値は、使用できる場合は必ず指定してください。 |
| private | ポータル サーバにおいて、キャッシュされたコンテンツが共有できないようにします。この場合、ユーザごとに別々のコピーがキャッシュ内に保持されるよう、キャッシュ キーにユーザ ID が追加されます。この値は、電子メール受信トレイ ポートレットのように、機密情報を保護する必要がある場合にのみ使用してください。(ユーザ設定を使用すれば、共有可能コンテンツを実質的に共有できないよう設定することも可能です。) |
| max-age=[seconds] | オブジェクトが最新状態にあると見なされる最大期間を指定します。Expires ヘッダと同様、この値を指定することで、より柔軟な処理が可能となります。[seconds] は、そのオブジェクトを最新状態にする要求がなされた時点からの秒数を表します。 |
| must-revalidate | キャッシュに対して、オブジェクトの状態が最新かどうかを判断する場合は受け取った情報に従うよう指定します。HTTP においては、オブジェクトの状態が最新かどうかの判断はキャッシュに委ねられます。この値を指定すると、その判断をユーザ側で厳密に制御することができます。 |
| no-cache | Web サービス エディタの設定内容にかかわらず、キャッシュ機能を完全に無効化します。これ以降、クライアントもポータル サーバも、キャッシュされたバージョンを要求するリクエストに対しては応答しません。 |
<%
response.setHeader("Cache-Control","public");
%>
<%
response.setHeader("Cache-Control","max-age=0");
%>
Response.Cache.SetCacheability(HttpCacheability.Public);
TimeSpan ts = new TimeSpan(0,0,0); Response.Cache.SetMaxAge(ts);
Response.Cache.SetRevalidation(HttpCacheRevalidation.AllCaches);