Bueno .. cuando usas sesiones también estas controlan el caché con sus funciones:
session_cache_expire()
session_cache_limiter()
No indicas como propagas el SID en el uso de sesiones que haces (y configuración de PHP) .. Te recuerdo que tienen tiempo de expiración también las sesiones (php.ini: session.gc_maxtimelife ).
Tampoco vemos como validas esas páginas en función de qué? . una variable de sesión?
www.php.net/session
Un saludo,
PD: Te recomiendo que hagas una busqueda en el foro por "sesiones" veras infinidad de temas que hablan de todo esto.