Pergunta

Estou tentando aumentar o tempo limite em todas as sessões. O site está hospedado com o GoDaddy e está escrito no Flash (lado do cliente, é claro) e Asp.net no back -end. Eu adicionei isso ao meu web.config,

<sessionState timeout="720">

</sessionState>

Isso é realmente tudo o que eu preciso fazer? Eu preferiria não deixar as sessões expirarem nunca, mas tenho certeza de que o servidor precisa recuperar essa memória em algum momento ... Não estou armazenando nada na sessão, realmente, apenas usando -o para rastrear o progresso dos usuários através do site e se um usuário estiver conectado ou não.

Obrigado por qualquer indicação ... toda a documentação parece enganosamente simples, e meio que me deixa nervoso ...

Foi útil?

Solução

Sim! Como em; Sim, essa é a única coisa que você precisa fazer ...

Para obter "Tempo limite sem fim", você teria que criar uma solicitação HTTP em segundo plano (que transmitirá o cookie da sessão) de volta ao servidor a cada 719 minutos. Embora teoricamente, você também teria que ter sessões "fora do processo" usando o exemplo de algum tipo de banco de dados ou algo assim ...

Ou você pode rolar seu próprio manipulador de sessão, acho que o APS.NET tem suporte para isso usando algum tipo de padrão de adaptador ou algo assim, mas não tenho certeza. Então você pode ter uma sessão "verdadeiramente" sem fim ...

Outras dicas

Se você estiver usando a autenticação de formulários, também precisará definir o tempo limite de autenticação de formulários em seu web.config

Exemplo:

<authentication mode="Forms">
  <forms
    name=".ASPXAUTH"
    loginUrl="/Home/Default.aspx"
    defaultUrl="/Dashboard/Default.aspx"
    protection="All"
    timeout="30"
    slidingExpiration="true"
  />
</authentication>
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top