{"id":14285,"url":"\/distributions\/14285\/click?bit=1&hash=346f3dd5dee2d88930b559bfe049bf63f032c3f6597a81b363a99361cc92d37d","title":"\u0421\u0442\u0438\u043f\u0435\u043d\u0434\u0438\u044f, \u043a\u043e\u0442\u043e\u0440\u0443\u044e \u043c\u043e\u0436\u043d\u043e \u043f\u043e\u0442\u0440\u0430\u0442\u0438\u0442\u044c \u043d\u0430 \u043e\u0431\u0443\u0447\u0435\u043d\u0438\u0435 \u0438\u043b\u0438 \u043f\u0443\u0442\u0435\u0448\u0435\u0441\u0442\u0432\u0438\u044f","buttonText":"","imageUuid":""}

Все, что нужно знать о сессии на сайте

Под сессией принято понимать строго обозначенный промежуток времени, на протяжении которого пользователь пребывает на сайте. Все пользователи для входа в интернет используют специальные программы – браузеры. Идентификация пользователя в интернете осуществляется с учетом его персональных данных, речь идет о cookies-файлах и IP-адресе.

Протяженность сеанса пользователя на сайте определяется исходя из промежутка между первым и последним действием, совершенным им на сайте. Практика показывает, что в ходе измерения протяженности сеанса возникают трудности. В первую очередь это обусловлено отсутствием возможности постоянного контроля над временем просмотра страницы, на которую перешел пользователь по ссылке. На данный момент не существует программного обеспечения, способного выполнять такие задачи.Чтобы разобраться в том, что такое сессия на сайте, рассмотрим следующий пример:

  • Необходимо войти в любой браузер;
  • Пройти процедуру авторизации в двух аккаунтах на одном сервисе (напр., в аккаунтах Google). И тут возникают первые трудности, так как сервис не дает возможности находиться одновременно в двух аккаунтах и предлагает выбрать какой-то один;
  • Далее открываем другой браузер, при этом не выходим из первого. Пробуем зайти во второй аккаунт на сервисе;
  • На этот раз уведомление от сайта не появилось и пользователь может просматривать сайт и со второго аккаунта.

Сценарии сессии на сайте

Сессия как событие в сервисах аналитики применяется с целью наблюдения за поведением пользователей, посещающих сайт. Сессия напрямую взаимосвязана со следующими метриками:

  • Просмотр страницы;
  • Продолжительность сеанса;
  • Действия, совершенные пользователем, во время его пребывания на странице;
  • Вовлеченность трафика.

На данный момент сессия как событие характеризуется широкой областью применения, одним из вариантов ее использования могут быть следующие сценарии:

  • Обработка данных с последующим удалением персональных данных пользователей;
  • Анализ трафика на сайте;
  • Тестирование сервера или сайта.

В рамках данной статьи мы будем рассматривать сессию применительно к сайту и веб-аналитике. В данном случае сессия выступает в качестве инструмента для определения последовательности запросов, выполняемых пользователем.

Клиент и сервер. Практическая реализация распознавания запроса

Если рассматривать сессию с точки зрения отдельного события, то речь идет о совокупности запросов, отправляемых от лица клиента в момент его взаимодействия с хостом/сервером. Клиент может быть представлен не только в виде браузера, но и в виде поискового робота или веб-приложения. Хост в большинстве случаев – это сайт.

Сессия может включать в себя все запросы, совершенные клиентом на протяжении строго обозначенного промежутка времени.

Сервер самостоятельно классифицирует запросы, поступающие от клиента. Сейчас широко применяется идентификация запроса – cookies-файл, важно отметить, что помимо него существуют и другие варианты. В качестве примера можно рассмотреть идентификацию запросов клиента посредством обращения к параметрам запроса, MAC-адресу, что стало возможным благодаря расширенным HTTP-заголовкам.

Взаимодействие HTTP-протокола на протяжении сеанса

Процесс создания и завершения сеанса на сайте

Открытие сессии PHP обеспечивается за счет функции session_start(), которая осуществляет проверку открытых сессий и в случае их отсутствия, производит запуск этой функции. Оптимальное решение – это размещение вызова session_start() в начале страницы. Переменные сеанса находятся в суперглобальном ассоциативном массиве $_SESSION[]. Открытие сессии позволяет получить доступ к этим переменным.

Для удаления сессии задействуется функция session_destroy(). Посредством одного вызова можно осуществить удаление всех переменных сеанса. Для удаления одной переменной сессии рекомендуется обратиться к функции unset(), которая дает возможность произвести отключение необходимой переменной.

Заключение

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

Если рассматривать сессию в ее взаимосвязи с сайтом, то речь идет о многоаспектном понятии. При этом на практике чаще оно используется в тех случаях, когда возникает необходимость в составлении отчетов веб-аналитики. Комплексное изучение сессии как события позволит увеличить эффективность анализа отчетов веб-аналитики.

0
Комментарии
-3 комментариев
Раскрывать всегда