сесии
5 отговора
249 прегледа
сесии
здравейте
проблема ми е свързан със сесиите, и в частност с тяхното изтичане. става така, че когато започне сесията, тя изтича след около половин час. бих искал да разбера къде според вас може да се крие причината това да става. по-надолу се намират 3 прости файла, с който също съм пробвал и проблема продължава да съществува (въпреки, че според мен няма логика да става така). настройките на сървъра са следните:
Session Support enabled
Registered save handlers files user
Directive Local Value Master Value
session.auto_start Off Off
session.bug_compat_42 On On
session.bug_compat_warn On On
session.cache_expire 180 180
session.cache_limiter nocache nocache
session.cookie_domain no value no value
session.cookie_lifetime 0 0
session.cookie_path / /
session.cookie_secure Off Off
session.entropy_file no value no value
session.entropy_length 0 0
session.gc_divisor 100 100
session.gc_maxlifetime 1440 1440
session.gc_probability 1 1
session.name PHPSESSID PHPSESSID
session.referer_check no value no value
session.save_handler files files
session.save_path /tmp /tmp
session.serialize_handler php php
session.use_cookies On On
session.use_only_cookies Off Off
session.use_trans_sid On On
принципа, на който използвам сесиите, е показан в тези трите файла:
--------------------------------------------------------
1.php
*****
<?php
session_start();
if (!session_is_registered(prom))
{echo "ne e registrirana sesiq do momenta. ";
session_register(prom);
$prom = "blabla";
session_write_close();
}
else
echo "sesiqta e registrirana ";
echo $prom;
?>
<a href=2.php> 2</a>
----------------
2.php
*****
<?php
session_start();
if(!session_is_registered(prom))
echo "ne e registrirana sesiq";
else echo "registrirana e sesiqta - $prom";
?>
<a href=3.php>3</a>
-----------------
3.php
*****
<?php
session_start();
if (session_is_registered(prom))
echo "registrirana e sesiqta - $prom";
else echo "nqma registrirana sesiq";
?>
<a href="1.php">1</a>
----------------------------------------------------------------
отново повтарям (защото стана много дълго:), проблема е, че изтичат след около половин час, моля някой да даде идея защо се получава така и къде е причината според него.
проблема ми е свързан със сесиите, и в частност с тяхното изтичане. става така, че когато започне сесията, тя изтича след около половин час. бих искал да разбера къде според вас може да се крие причината това да става. по-надолу се намират 3 прости файла, с който също съм пробвал и проблема продължава да съществува (въпреки, че според мен няма логика да става така). настройките на сървъра са следните:
Session Support enabled
Registered save handlers files user
Directive Local Value Master Value
session.auto_start Off Off
session.bug_compat_42 On On
session.bug_compat_warn On On
session.cache_expire 180 180
session.cache_limiter nocache nocache
session.cookie_domain no value no value
session.cookie_lifetime 0 0
session.cookie_path / /
session.cookie_secure Off Off
session.entropy_file no value no value
session.entropy_length 0 0
session.gc_divisor 100 100
session.gc_maxlifetime 1440 1440
session.gc_probability 1 1
session.name PHPSESSID PHPSESSID
session.referer_check no value no value
session.save_handler files files
session.save_path /tmp /tmp
session.serialize_handler php php
session.use_cookies On On
session.use_only_cookies Off Off
session.use_trans_sid On On
принципа, на който използвам сесиите, е показан в тези трите файла:
--------------------------------------------------------
1.php
*****
<?php
session_start();
if (!session_is_registered(prom))
{echo "ne e registrirana sesiq do momenta. ";
session_register(prom);
$prom = "blabla";
session_write_close();
}
else
echo "sesiqta e registrirana ";
echo $prom;
?>
<a href=2.php> 2</a>
----------------
2.php
*****
<?php
session_start();
if(!session_is_registered(prom))
echo "ne e registrirana sesiq";
else echo "registrirana e sesiqta - $prom";
?>
<a href=3.php>3</a>
-----------------
3.php
*****
<?php
session_start();
if (session_is_registered(prom))
echo "registrirana e sesiqta - $prom";
else echo "nqma registrirana sesiq";
?>
<a href="1.php">1</a>
----------------------------------------------------------------
отново повтарям (защото стана много дълго:), проблема е, че изтичат след около половин час, моля някой да даде идея защо се получава така и къде е причината според него.
Re: сесии
abe az ne razbiram mnogo ot PHP ama da ne e pri4inata v nastroikite za produljitelnosta na PHP scriptovete. sigurno govora gluposti ama pone e predlojenie.
Re: сесии
Ми смени си session.gc_maxlifetime. В момента ти е 1440 което е 24 мин.
----------
Кирилица Forever
----------
Кирилица Forever
Re: сесии
1. не ползвай session_register, session_is_registered и т.н., а $_SESSION superglobal променливата
2. за всеки случай си сетни всички параметри в началото на скрипта (ini_set, session_set_cookie_params и т.н.)
3. ако cache_limiter-а ти е nocache, cookie_domain-a ти е валиден и cookie_lifetime-а ти е 0, ще имаш куки докато не затвориш браузъра или не се логаутнеш (мисля че трябваше да го изтриваш тогава експлицитно)
2. за всеки случай си сетни всички параметри в началото на скрипта (ini_set, session_set_cookie_params и т.н.)
3. ако cache_limiter-а ти е nocache, cookie_domain-a ти е валиден и cookie_lifetime-а ти е 0, ще имаш куки докато не затвориш браузъра или не се логаутнеш (мисля че трябваше да го изтриваш тогава експлицитно)