2012-10-17 2 views
1

Sitecore DMS를 사용하면 프로필을 만들고 사용자의 방문 습관을 기반으로 특정 페이지를 표시 할 수 있습니다. 이 정보는 쿠키를 사용하여 저장되므로 사용자가 돌아올 때마다 방문자 프로필이 동일합니다. 그러나 쿠키를 삭제하거나 정보가 사라지면 브라우저를 전환하면됩니다. 이제이 방문자 정보를 sitecore 사용자에게 저장하여 로그인 할 수 있으며 방문자 프로필은 어디에 있든 또는 어떤 브라우저를 사용하든 그들이 떠난 때와 동일합니다. 나는 잠시 동안 이걸 알아 내려고 노력했지만 성공하지 못했습니다. 사용자와 로그인하여 특정 프로필을 만들 때마다 로그 아웃하면 바로 그 프로필이 삭제됩니다. 쿠키가 끊임없이 삭제 될 때 쿠키를 기반으로하는 프로필 만 있으면 좋지 않으므로 Sitecore의 경우에도 가능합니다.사용자에게 Sitecore DMS 방문자 정보 저장

답변

2

Sitecore Analytics에는 두 개의 추적 쿠키가 있습니다. 하나는 Session 용이고 다른 하나는 GlobalSession 용이며 다른 하나는 정상 asp.net 세션에서 만료되지 않습니다. 불행히도 Sitecore는 GlobalSession 기반의 프로필 키 점수를 추적하지 않고 단일 asp.net 세션을 추적합니다. 전체 시스템은이를 기반으로하며 매우 실망 스럽습니다. '

이 문제를 해결하기 위해 OMS를 사용하고 Reflector를 사용하여 분석 세션의 일부를 역순으로 재 작성하여 전역 세션별로 기록했습니다. 또한 새로운 규칙뿐만 아니라 몇 가지 스키마 변경이 필요했습니다 ... 꽤 광범위한 작업. 결국 데이터베이스의 크기와 제한된 수의 기능에 대한 필요성 때문에 하루에 하나의 테이블을 만들고 전역 키를 사용하여 프로필 키 값을 기록했습니다.

내가 알기로는 스키마가 OMS에서 DMS로 변경되었지만 세션별로 데이터가 기록되는 가장 중요한 요소는 변경되지 않았습니다.

사용자의 ID를 저장하는 것과 관련하여 적어도 OMS에서 globalsessionid와 함께 저장되는 '태그'와 연관시킬 수 있습니다. 그러나 Sitecore는 태그 레코드를 업데이트하지 않으므로 전역 세션 당 여러 레코드로 끝납니다. 모든 요청에이 값을 저장하면 해당 테이블이 빠르게 부풀려집니다.

+0

답변 해 주셔서 감사합니다. – avoliva

0

여기에는 몇 가지 이유가 있습니다. 그 중 가장 중요한 것은 많은 경우에이 정보를 연관시키는 로그인 사용자가없는 것입니다. 프로필 데이터는 쿠키에 저장되지 않으며 웹 로그 분석 테이블에 저장됩니다. 그러나 고유 한 ID를 가진 쿠키와 연관되어 있으며 일단 삭제되면 ID (다시 말해서!)가 다시 사용되지 않습니다.

이 StackOverflow 답변에서이 here을 해결하는 방법에 대한 제안.