рдХреЛрдбрд╛рдЗрдирд╛рдЗрдЯрд░: рд╕рддреНрд░ рдХреЛ рдЕрдВрдд рдореЗрдВ рд╕реНрдерд┐рд░ рдмрдирд╛рддреЗ рд╣реИрдВ (рдореБрдЦреНрдп рд░реВрдк рд╕реЗ рдкреНрд░рд╛рдзрд┐рдХрд░рдг рдХреЗ рд▓рд┐рдП)

Codeigniter рдкрд░ рд╕рддреНрд░ рд╕рднреА рдХреЗ рд▓рд┐рдП рдЕрдЪреНрдЫреЗ рд╣реИрдВред рд╕рдЪ рд╣реИ, рд╡реЗ рдмрд╣реБрдд рдЖрд╕рд╛рдиреА рд╕реЗ рдмрдирд╛рдпреЗ рдЬрд╛рддреЗ рд╣реИрдВ, рдЦрд╛рд╕рдХрд░ рдЬрдм рдЖрдк рдбреЗрдЯрд╛рдмреЗрд╕ рдореЗрдВ рд╕рддреНрд░реЛрдВ рдХреЛ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд░рддреЗ рд╣реИрдВ (рдЬрд┐рд╕реЗ рдореИрдВ рдПрдХрдорд╛рддреНрд░ рд╕рдЪ рдорд╛рдирддрд╛ рд╣реВрдВ)ред рдХреБрдХреАрдЬрд╝ рдПрдиреНрдХреНрд░рд┐рдкреНрдЯреЗрдб рд╣реИрдВ; рдХреБрдХреАрдЬрд╝ рдХреЗ рдкрд╛рд╕ рдкрд╣рдЪрд╛рдирдХрд░реНрддрд╛ рдХреЗ рдЕрд▓рд╛рд╡рд╛ рдХреБрдЫ рдирд╣реАрдВ рд╣реИред рд╡реЗ IP рдХреЗ рд▓рд┐рдП, рд╡реИрдХрд▓реНрдкрд┐рдХ рд░реВрдк рд╕реЗ user_agent рдФрд░ рдХреЗ рд▓рд┐рдП рдмрд╛рдзреНрдп рд╣реЛрддреЗ рд╣реИрдВред рдЕрдЪреНрдЫрд╛, рд╕реБрд░рдХреНрд╖рд┐рддред

рд▓реЗрдХрд┐рди рдЙрдирдХреЗ рдкрд╛рд╕ рдПрдХ рдмрд╣реБрдд рдорд╣рддреНрд╡рдкреВрд░реНрдг рджреЛрд╖ рд╣реИ: рд╕рддреНрд░ рдЬреАрд╡рди рдХреА рдЧрдгрдирд╛ last_activity рдлрд╝реАрд▓реНрдб рд╕реЗ рдХреА рдЬрд╛рддреА рд╣реИ ред рдЗрд╕рдХрд╛ рдорддрд▓рдм рдпрд╣ рд╣реИ рдХрд┐ рдпрджрд┐ рдЖрдкрдХреЗ рдкрд╛рд╕ рджреЛ рджрд┐рдиреЛрдВ рдХреЗ рд▓рд┐рдП рдПрдХ рд╕рдорд╛рдкреНрддрд┐ рд╕рддреНрд░ рд╣реИ, рддреЛ рдЕрдВрддрд┐рдо_рдРрдХреНрдЯрд┐рд╡рд┐рдЯреА <рд╕рдордп () - 172800 рдХреЗ рд╕рд╛рде рдПрдХ рд╕рддреНрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╕рдордп рдЗрд╕реЗ рд╕рдорд╛рдкреНрдд рдХрд░ рджрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдФрд░ рдПрдХ рдирдпрд╛ рд╢реБрд░реВ рд╣реЛрддрд╛ рд╣реИред рдирддреАрдЬрддрди, рддрд╛рдХрд┐ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЛ рд╣рд░ рдмрд╛рд░ рд╕рд╛рдЗрдЯ рдкрд░ рд▓реЙрдЧ рдЗрди рди рдХрд░рдирд╛ рдкрдбрд╝реЗ, last_activity рдХреЛ рдЕрджреНрдпрддрд┐рдд рд░рдЦрдирд╛ рд╣реЛрдЧрд╛ред
Last_activity рдлрд╝реАрд▓реНрдб рджреЛ рдорд╛рдорд▓реЛрдВ рдореЗрдВ рдЕрдкрдбреЗрдЯ рдХреА рдЬрд╛рддреА рд╣реИ: рдЬрдм рдЖрдк рд╕рддреНрд░ рдХреЗ рд▓рд┐рдП рдХреБрдЫ рдирдпрд╛ рд▓рд┐рдЦрддреЗ рд╣реИрдВ, рдпрд╛ рдЬрдм рд╕рддреНрд░ рдЕрдкрдбреЗрдЯ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ (рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ, рдкреНрд░рддреНрдпреЗрдХ 5 рдорд┐рдирдЯ, рдлрд┐рд░ рд╕реЗ, last_activity рдХреЗ рд╕рд╛рдкреЗрдХреНрд╖, рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдореЗрдВ рдирд┐рд░реНрджрд┐рд╖реНрдЯ)ред рдФрд░ рдореБрдЦреНрдп рд╕рдорд╕реНрдпрд╛ рдпрд╣ рд╣реИ рдХрд┐ рд╕рддреНрд░, рд╕рддреНрд░_ рдореЗрдВ рдкрд░рд┐рд╡рд░реНрддрди рдФрд░ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЗ рд╡рд░реНрддрдорд╛рди рд╕рддреНрд░ рдХреЛ рдЕрдкрдбреЗрдЯ рдХрд░рддреЗ рд╕рдордп, рд╕рддреНрд░ рдмрд╛рдзрд┐рдд рд╣реЛрддрд╛ рд╣реИ, рдПрдХ рдирдпрд╛ рд╕рддреНрд░ рд╢реБрд░реВ рд╣реЛрддрд╛ рд╣реИред

рд╕рдЪ рдХрд╣реВрдБ рддреЛ, рдЗрд╕ рддрд░рд╣ рдХреЗ рд╕рддреНрд░ рд╡реНрдпрд╡рд╣рд╛рд░ рдиреЗ рдореБрдЭреЗ рдЖрд╢реНрдЪрд░реНрдпрдЪрдХрд┐рдд рдХрд░ рджрд┐рдпрд╛ред рдРрд╕реА рд╡рд╛рд╕реНрддрд╡рд┐рдХрддрд╛рдУрдВ рдореЗрдВ, рдкреНрд░рд╛рдзрд┐рдХрд░рдг рд╕рдорд░реНрдерди рдЙрдкрдХрд░рдг рдХреЗ рд░реВрдк рдореЗрдВ рдореВрд▓ рд╕рддреНрд░реЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдЕрд╕рдВрднрд╡ рд▓рдЧрддрд╛ рд╣реИ ...

рд╕рдорд╕реНрдпрд╛ "рдЬрд▓рддреА рд╣реБрдИ" рд╣реИ, рдЗрд╕реЗ рдЕрдХреНрд╕рд░ рдХреЛрдбрд┐рдЧреНрдирд┐рдЯрд░ рдордВрдЪреЛрдВ рдореЗрдВ рдпрд╛рдж рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдореИрдВрдиреЗ рдХрднреА рднреА рдПрдХ рдмреБрджреНрдзрд┐рдорд╛рди рд╕рдорд╛рдзрд╛рди рдирд╣реАрдВ рджреЗрдЦрд╛ рд╣реИред

рд▓реЗрдХрд┐рди рд▓рдХреНрд╖реНрдп, рдЬреИрд╕рд╛ рдХрд┐ рдЖрдк рдЬрд╛рдирддреЗ рд╣реИрдВ, рдХрд▓реНрдкрдирд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдПрдХ рд╕рд░рд▓ рд╕рдорд╛рдзрд╛рди рдорд┐рд▓рд╛ред

рдкрд╣рд▓реА рдЕрдкрдбреЗрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ / config.php рдореЗрдВ рд╕рддреНрд░ рд╕рдорд╛рдкреНрддрд┐ рдЖрд╡реГрддреНрддрд┐ рдХреЛ рдЙрд╕рдХреЗ рд╕рдордп рд╕рдорд╛рдкреНрдд рд╣реЛрдиреЗ рдХреЗ рд╕рдордп рдХреЗ рдмрд░рд╛рдмрд░ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рдирд╛ рд╣реИ:
================
$config['sess_time_to_update'] = $config['sess_expiration'];
================
рдлрд┐рд░, рд╣реБрдХ рдХреЛ рд╕рдХреНрд╖рдо рдХрд░реЗрдВ:
================
$config['enable_hooks'] = TRUE;
================

рдлрд┐рд░, config / hooks.php рдореЗрдВ :
================
$hook['post_controller_constructor'] = array(
'class' => '',
'function' => 'sess_update',
'filename' => 'sess_update.php',
'filepath' => 'hooks'
);

================
(рд╣реБрдХ рдмрд┐рдВрджреБ, рд╕рд┐рджреНрдзрд╛рдВрдд рд░реВрдк рдореЗрдВ, рдХреЛрдИ рднреА рд╣реЛ рд╕рдХрддрд╛ рд╣реИ, рдореБрдЦреНрдп рдмрд╛рдд рдпрд╣ рд╣реИ рдХрд┐ рдкреГрд╖реНрда рдЦреБрд▓рдиреЗ рдкрд░ рдЗрд╕реЗ рд╣рд░ рдмрд╛рд░ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛)

рдФрд░ рд╣реБрдХ рдореЗрдВ рд╣рдо sess_update.php рдмрдирд╛рддреЗ рд╣реИрдВ:
================
<?php
function sess_update()
{
$CI =& get_instance();
if ($CI->session->userdata('last_activity')< time() - 300) {
$CI->session->set_userdata('last_activity', time());
}
}

================
рдпрд╣ рдХрд╛рд░реНрдп 5 рдХреЛрдкреНрдкреЗрдХ рдХреЗ рд░реВрдк рдореЗрдВ рд╕рд░рд▓ рд╣реИ: рд╣рдореЗрдВ рдХреЛрдбрд╛рдЗрдирд┐рдЯрд░ рд╕реБрдкрд░рдмреЙрдЬреЗрдХреНрдЯ рдХрд╛ рд▓рд┐рдВрдХ рдорд┐рд▓рддрд╛ рд╣реИ, рджреЗрдЦреЗрдВ рдХрд┐ рдХреНрдпрд╛ рд╕рддреНрд░ рдХреЗ рдЕрдВрддрд┐рдо рдЕрдкрдбреЗрдЯ рдХреЗ рдмрд╛рдж 5 рдорд┐рдирдЯ рдмреАрдд рдЪреБрдХреЗ рд╣реИрдВ (рдЗрд╕рд▓рд┐рдП рд╣рд░ рдмрд╛рд░ рдЕрддрд┐рд░рд┐рдХреНрдд рдЕрдиреБрд░реЛрдз рдХреЗ рд╕рд╛рде рдбреЗрдЯрд╛рдмреЗрд╕ рдХреЛ рддреВрдлрд╛рди рди рдХрд░реЗрдВ) рдФрд░, рдпрджрд┐ рдпрд╣ рдкрд╛рд░рд┐рдд рд╣реЛ рдЧрдпрд╛ рд╣реИ, рддреЛ рдореИрдиреНрдпреБрдЕрд▓ рд░реВрдк рд╕реЗ рдЕрдВрддрд┐рдо рд╕рдордп рдХреЗ рд▓рд┐рдП last_activity рдлрд╝реАрд▓реНрдб рд╕реЗрдЯ рдХрд░реЗрдВ ред

рдЕрдирд┐рд╡рд╛рд░реНрдп рд░реВрдк рд╕реЗ, рдкреНрд░рднрд╛рд╡ $ config ['sess_time_to_update'] рдореЗрдВ 5 рдорд┐рдирдЯ рдХреЛ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рдиреЗ рдХреЗ рд╕рдорд╛рди рд╣реИ, рд▓реЗрдХрд┐рди рдПрдХ рд╣реА рд╕рдордп рдореЗрдВ рд╕рддреНрд░ рдЕрдкреНрд░рдХрд╛рд╢рд┐рдд рд░рд╣рддрд╛ рд╣реИ, рдбреЗрдЯрд╛ рдХрд╣реАрдВ рднреА рдирд╣реАрдВ рдЬрд╛рддрд╛ рд╣реИ рдФрд░, рдЖрдкрдХреЗ рдЕрдзрд┐рдХреГрдд рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛, рдЕрдЧрд▓реЗ рджрд┐рди рдпрд╛ рджреЛ рдкрд░ рд╕рд╛рдЗрдЯ рдкрд░ рдкрд╣реБрдВрдЪрддреЗ рд╣реИрдВред рдореВрд▓реНрдп рдХреЗ рдЖрдзрд╛рд░ рдкрд░ $ config ['sess_expiration']) рдЕрдзрд┐рдХреГрдд рд░рд╣реЗрдЧрд╛ред

Source: https://habr.com/ru/post/In130853/


All Articles