ini_set('session.gc_probability', 1);
ini_set('session.gc_divisor', 1);
ini_set('session.gc_maxlifetime', 30 * 60);bunları denediniz mi?
ya da
$timeout = 30 * 60;
if( ! isset($_SESSION['timeout']))
{
$_SESSION['timeout'] = time();
}
if($_SESSION['timeout'] + $timeout < time())
{
session_destroy();
//Location:/logout.php gibi..
}