session_cache_limiter

(PHP 4 >= 4.0.3, PHP 5)

session_cache_limiter -- カレントのキャッシュリミッタを取得または設定する

説明

string session_cache_limiter ( [string cache_limiter])

session_cache_limiter() は、カレントのキャッシュ リミッタの名前を返します。cache_limiterが 指定された場合、カレントのキャッシュリミッタは新しい値に変更され ます。

キャッシュリミッタは、クライアントに送信されるキャッシュ制御用の HTTPヘッダを制御します。これらのヘッダは、ページの内容をクライアントやプロキシがキャッシュ する規則を定義します。例えば、キャッシュリミッタを nocacheに設定した場合、クライアント/プロキシのキャッ シュは無効になります。しかし、publicの場合は、 キャッシュを許可します。privateと設定すること も可能で、この場合、プロキシがキャッシュすることは許可しませんが クライアントがキャッシュすることは許可されます。

privateモードにおいて、Expireヘッダがクライア ントに送信されます。これは、Mozillaのようないくつかのブラウザを混 乱させます。これを避けるには、 private_no_expireモードを使用して下さい。 このモードでは、Expireヘッダはクライアントに送信されません。

注意: private_no_expireは、PHP 4.2.0で追加されま した。

キャッシュリミッタは、リクエスト開始時に session.cache_limiterに保存されたデフォルト値 にリセットされます。つまり、各リクエスト毎に(アウトプットバッファー が無効な場合は、session_start()がコールされる 前に) session_cache_limiter()をコールする必要 があります。

例 1. session_cache_limiter()の例

<?php

/* キャッシュリミッタを'private'に設定する */

session_cache_limiter('private');
$cache_limiter = session_cache_limiter();

echo
"The cache limiter is now set to $cache_limiter<p>";
?>

session.cache_limiter 設定ディレクティブも参照してください。