システム開発者の実験記 このページをアンテナに追加 RSSフィード

2010-12-01 session_cache_limiter

[]session_cache_limiter

session_cache_limiter("none");

と誰かが書いていたので、マニュアルを見てみたのですが、noneなんてパラメータはない。

しかし、検索すると出てくるので、どういう挙動になるのかと調べてみました。

規定のパラメータ(public・private_no_expire・private・nocache)だと、

start_session()を行ったときに、Cache-Control:ヘッダが送られます

送られる内容については、

http://php.net/manual/ja/function.session-cache-limiter.php

を参照してください。

PHPソースを読んだところ、public・private_no_expire・private・nocache以外の

場合は、ヘッダが送られないとなっています

<?php
session_cache_limiter('none');
session_start();

echo "a";

上記の場合は、Cache-Control:ヘッダは付加されませんでした。

というか、public・private_no_expire・private・nocacheこれ以外だと、

何の文字入れても送られない。'aaaa'でも期待する結果は得られました。

なんか、バッドノウハウ的な気もしますが。

SSL環境下のIEだと、必要な時があるので、役立ちそうです。