OK - jeg tror på, at det er tilfældigt, hvor længe du kan holde sessionen, men det jeg har testet, har den holdt ca. 10-12 minutter. Jeg kan se, at du har stillet spørgsmålet på udvikleren også, og af koden du har postet der, kan jeg se, at du forsøger at sætte nogle værdier til systemvariable. Jeg tror ikke, at din session.timeout ændrer noget. Prøv lige at tjekke det ved at se, hvad funktionen returnerer. Hvis den returnerer 'false' (eller ingenting), bliver den ikke sat. Dernæst ville jeg altid vælge at have session_start() ALLER først på alle sider.
Prøv evt. at give din session et navn og debug dig frem til, hvad dine konstanter og variable er hvert minut (i et nyt vindue). Det vil muligvis kunne give dig en bedre idé om, hvad det er, der foregår.
En anden ting jeg ikke kan lade være med at nævne er, at du leder til sider med meta refresh, og det er nok ikke den smarteste måde at gøre det på. Hvis en bruger har slået meta refresh fra i sin browser, kan vedkommende jo ikke bruge din side, og det er faktisk ikke frygteligt unormalt. Hvad med at bruger PHP-funktionen header("Location:
http://[....]".$_GET['side']); ??....men det er selvfølgelig en helt anden ting :-)