Skip to content

Latest commit

 

History

History
39 lines (32 loc) · 2.83 KB

README.md

File metadata and controls

39 lines (32 loc) · 2.83 KB

smartSessions

Это компонент для MODX Revolution, который заменяет стандартный обработчик сессий modSessionHandler, добавляя следующую информацию к записям сессий:

  • user_agent
  • user_id — если пользователь авторизован
  • ip — ip адрес

Благодаря этому можно получить расширенную информацию о посетителях на вашем сайте, а также по-разному хранить сессии, например, очищать сессии поисковых ботов чаще, чем сессии реальных пользователей, тем самым уменьшить размер базы данных

Установка

  1. Установите пакет из репозитория (или соберите сами из исходников)
  2. В системной настойке session_handler_class поставьте значение smartSessionHandler
  3. Проверьте, что данные записываются в таблицу modx_smart_sessions. Таблица modx_sessions теперь не используется.

Настройки

Доступные следующие настройки:

  • smartsessions_bot_signatures — список сигнатур поисковых ботов, разделенных вертикальной чертой, для поиска типа LIKE по полю user_agent. Добавьте сюда ботов, которые часто посещают ваш сайт.
  • smartsessions_bots_gc_maxlifetime — время жизни сессий ботов, указанных в настройке smartsessions_bot_signatures. Уменьшая его вы уменьшите срок хранения сессий ботов и сократите размер таблицы с сессиями.
  • smartsessions_empty_user_agent_gc_maxlifetime — время жизни сессий с пустым User-Agent. Как правило, его можно сделать таким же как и для ботов.
  • smartsessions_authorized_users_gc_maxlifetime — время жизни сессий авторизованных пользователей. Вы можете увеличить его и сделать значение больше, чем в настройке session_gc_maxlifetime.

Полезное

SQL запрос для просмотра количества сессий, сгруппированных по user_agent (поможет узнать каких сессий больше всего у вас на сайте):

SELECT `user_agent`, COUNT(*) 
   FROM `modx_smart_sessions` 
   GROUP BY `user_agent` 
   ORDER BY `COUNT(*)` DESC