С мес. назад гуглил темы по поводу увеличения времени сессии и срока хранения товаров в корзине у незарег. пользователей, инфа была относительно разрозненной, посылали то в настройки у хостера (сервера), то в правку файлов,
от \public_html\system\library\session.php
\public_html\system\library\session\db.php
\public_html\system\library\session\file.php
до \public_html\php.ini
Уже не помню как нагуглил, да и вообще нагуглил ли, часть уж точно, но все решилось гораздо проще, причем и для админки тоже, в общем на ocStore 2.3 оказалось достаточно:
1. дописать две строчки в конце public_html\config.php
ini_set('session.gc_maxlifetime', 5184000);
ini_set('session.cookie_lifetime', 5184000);
2. заменить в public_html\system\library\cart\cart.php
$this->db->query("DELETE FROM " . DB_PREFIX . "cart WHERE (api_id > '0' OR customer_id = '0') AND date_added < DATE_SUB(NOW(), INTERVAL 1 HOUR)");
на
$this->db->query("DELETE FROM " . DB_PREFIX . "cart WHERE (api_id > '0' OR customer_id = '0') AND date_added < DATE_SUB(NOW(), INTERVAL 2 MONTH)");
Как итог, сохранив ссылку на админку с токеном уже с мес не авторизуюсь и корзина никуда не пропадает при открытии, закрытии браузера. При этом в php.ini как было "session.gc_maxlifetime = 3600;" так и осталось.
Просьба старожил прокомментировать решение в части безопасности, ну, а тем кому пригодится, пользуйтесь.
п.с. 5184000 - время в секундах.
Время жизни сессии + сохранение корзины, решено.
- nikifalex
- Разработчик дополнений
- Сообщения: 318
- Зарегистрирован: 17.03.2022
- Откуда: Россия
- Поблагодарил: 4 раз
- Спасибо: 38 раз
- Контактная информация:
Re: Время жизни сессии + сохранение корзины, решено.
допустим у вас траффик с ботами составляет 500 уников в день
внимание вопрос. Внимание вопрос. сколько файлов будет создано за 2 месяца
внимание вопрос. Внимание вопрос. сколько файлов будет создано за 2 месяца