2017-10-18 4 views
0

내가 60 분 web.config 파일에서 내 세션을 설정하지만, 세션이 자동으로도 5 ~ 15 분 정도 됐습니다 후에 시간 초과는 system.web 내 webconfig 파일 코드자동으로 세션 브레이크 아웃

<system.web> 
    <authentication mode="Forms"> 
    <forms loginUrl="default.aspx" slidingExpiration="true" timeout="60"/> 
    </authentication> 
    <sessionState timeout="60" mode="InProc" cookieless="false"/> 
    <pages controlRenderingCompatibilityVersion="4.0"/> 
</system.web> 

60 분 전에 세션이 만료되지 않도록 세션 상태 contatn을 어떻게 유지할 수 있습니까?

+0

세션이 시간 초과 된 것을 어떻게 알 수 있습니까? 어떤 종류의 웹 서버에서 호스팅하고 있습니까? 로드 밸런서가 관련되어 있습니까? –

+0

제품을 업데이트 할 때 10 분이 지나면 자동으로 로그인 페이지로 리디렉션됩니다. 서버에로드 밸런서가 있습니다. –

+0

그런 다음 때로는 호출되는 "세션 afinity"또는 "고정 세션"이로드 밸런서에 구성되어 있지 않을 수 있습니까? 세션 상태 모드가 inProc이므로 10 분 후에로드 밸런서가 클라이언트 요청을 다른 서버로 보내는 경우 세션 쿠키와 폼 인증 쿠키가 모두 유효하지 않습니다. 우리가 경험 한 경우 중 하나에서로드 밸런서에서 세션 afinity가 활성화되었지만 만료 시간은 5 분입니다. 이로 인해 한 페이지에서 5 분 이상을 소비하는 고객이 로그인 페이지로 무작위로 리디렉션되었습니다. –

답변

0

세션은 일반적으로 응용 프로그램을 사용하지 않은 후 20 분마다 종료됩니다. 한 가지 해결책은 아무 작업도 수행하지 않고 10 분마다 해당 페이지에 요청을 보내는 페이지를 만드는 것입니다. 이 방법으로 세션 변수가 유지됩니다.

http://www.tenpay.tech/questions/1485532/keeping-session-alive-c-sharp

+0

저를 설명해 주시겠습니까? 어떻게 작동하고 내 페이지가 60 분 동안 비활성 상태로 남아있을 때 무슨 일이 일어 났는지. 또한 10 분마다 요청을 보내지 만 서버에 몇 번이라도 요청을 보내지 않으려 고합니다. –

관련 문제