Sitecore 7.5 MVC and HttpContext.Session.Timeout set to 1 min

后端 未结 3 1424
情话喂你
情话喂你 2021-01-03 02:09

I have the session timeout set to 20min but when I try to access this value from action I\'m getting 1min instead.

Web.Config setti

相关标签:
3条回答
  • 2021-01-03 02:23

    In Sitecore 7 there is now multiple places you have to specify the Session Timeout.

    I would check these values in your Web.config.

    <setting name="Authentication.ClientSessionTimeout" value="120" /> 
    

    and

    <forms name=".ASPXAUTH" cookieless="UseCookies" timeout="120" />
    

    and then

    <sessionState mode="InProc" ... timeout="120" />
    

    More info here:

    Strange Timeout in Sitecore 7

    0 讨论(0)
  • 2021-01-03 02:31

    Every first request for a new user is considered as a possible bot request. That's why session timeout is set to 1 minute for those requests.

    If the request is executed by the proper end user, there should be VisitorIdentification code on your page which in fact will cause another background call to the server and extend the session for the user.

    Just add

    @using Sitecore.Mvc.Analytics.Extensions
    ...
    @Html.Sitecore().VisitorIdentification()
    

    to your layout .cshtml file.

    Timeout will be set to 1 minute for the first request, but then automatically changed back to 20 (or whatever is configured), when Sitecore does the VisitorIdentification call.

    0 讨论(0)
  • 2021-01-03 02:37

    The problem is in robots detection in Sitecore Analytics module. My browser is recognized as a bot and there are some settings about that in Sitecore.Analytics.Tracking.config file:

     <!--  ANALYTICS ROBOTS SESSION TIMEOUT
            The ASP.NET Session Timeout for auto detected robots. 
            When the automatic robot detection identifies a session as being a robot, the ASP.NET
            Session Timeout is set to this value (in minutes).
            Default: 1
      -->
      <setting name="Analytics.Robots.SessionTimeout" value="1" />
    

    The timeout is set to 1min when bot is detected to save some mememory and not to keep session too long.

    The timeout will be set to desired 20min value when I either disable Analytics at all or disable Analytics.AutoDetectBots (in Sitecore.Analytics.Tracking.config file).

    The proper solution for this is to clasify browser correctly (not as a bot).

    Another post on this issue:

    Sitecore Analytics Robots SessionTimeout causing premature session timeout

    0 讨论(0)
提交回复
热议问题