Вы можете установить переменную сеанса, такую как $ _SESSION ['lang'], и применять приведенный выше код, только если $ _SESSION ['lang'] не задано.
что я имею в виду:
if(!isset($_SESSION['lang'])){
if(preg_match('/en-US/', $_SERVER['HTTP_USER_AGENT'])){
$_SESSION['lang'] = 'en';
header("location:index.php");
}else{
$_SESSION['lang'] = 'other';
header("location:http://cn.gearor.com");
}
}