session_start() を実行しないと有効にならないので、セッションが必要無い場合は header を直書きすればいいと思いますが、セッションを有効にしても損は無いので以下のようにとておくと簡単です。 session_cache_limiter
<?php session_cache_limiter('nocache'); session_start(); ?>
header を直接書くと以下のようになります
<?php header( "Expires: Thu, 19 Nov 1981 08:52:00 GMT" ); header( "Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0" ); header( "Pragma: no-cache" ); ?>
▼ 以下は、Cache-Control の値についての解説です HTTP キャッシュ「no-store」はもっと単純です。返されたレスポンスのバージョンにかかわらず、ブラウザのキャッシュやすべての中間キャッシュはそのレスポンスを一切格納できません。たとえば、個人の機密データや銀行データが含まれているレスポンスなどです。ユーザーがこのアセットをリクエストするたびに、リクエストがサーバーに送信され、完全なレスポンスが毎回ダウンロードされます。※ 一部引用