Сессии и telnet

Klaus

SEO Cthulhu
Сессии и telnet

Имеем
- 1.php -
PHP:
<?
session_start();
$_SESSION["big"]="6666";
?>
<a href="2.php">test</a>
- 2.php -
PHP:
<? 
session_start();
if($_SESSION["big"]=="6666"){
echo "accepted";
}else{
echo "rejected";
}
?>
открываем 1.php, переходим на 2.php -> accepted
если открываем сразу 2.php --> rejected
как и должно быть...

Теперь проблема:
копируем логи запросов броузера к 2.php со старым ID сессии, закрываем броузер, открываем телнет, конектимся к домену, копируем туда лог. И что мы имеем --> accepted
Почему??? Как такое возможно??? Как это(или руки) исправить???

PHP Version 4.3.0
настройки:
register_globals = On
session.cookie_lifetime = 0
session.use_cookies = On
session.use_trans_sid = Off

Спасибо.
 

Unregistered-bd

Guest
Сессия еще жива. Дело в том, что в момент открытия страницы идет проверка на наличие ИД сессии - в урл или в кукисах. Если обнаружено, идет поиск соотв. файла сессии на сервере. Если обнаружен, опа - сессия поднята.
Что у тебя и происходит, ведь ты передаешь фактически данные кукисов на сервер с сессиоными данными.
Если в настройках стоит время жизни сессии 0, после закрытия браузера куки уничтожаются, и из _браузера_ ты ее уже не подымешь.
 

tony2001

TeaM PHPClub
>неприятно..
я бы сказал "непонятно".
кое-кто не понимает принципа работы сессий.
советую что-нибудь почитать.
например, мануал.
 
Сверху