Pergunta

A sessão no meu aplicativo geralmente expirou.

session_gc_maxlifetime é definido como 24 minutos (padrão);

Como meus aplicativos são um aplicativo em tempo real que basicamente usa o AJAX. A cada segundo, minha função Ajax chama uma solicitação HTTP. Tanto quanto eu sei, minha sessão não deve expirar, porque sempre chamou a solicitação do Ajax.

Funciona por algum tempo e expirando muito em breve (cerca de 2-3 minutos de inatividade).

Alguém pode me ajudar a resolver esse problema. Não apenas o meu site, mas o site de outras pessoas hospedado no mesmo servidor encontrou o mesmo problema.

Com agradecimentos e cumprimentos, Trez

Foi útil?

Solução

o session_gc_maxlifetime é basicamente inútil quando as sessões compartilham localização com outros sites hospedados: o PHP não rastreia qual site possui qual arquivo de sessão para que o site com o mais curto session_gc_maxlifetime provavelmente remova os dados da sessão de todos os sites.

Eu sugiro que você ative um diretório para o seu site e defina -o com o session_save_path () função antes de ligar session_start().

Outras dicas

Você pode reproduzir esse problema em um servidor de não produção?

Você tem algum script que limpe o diretório de sessões? Você já procurou no diretório de sessões para ver quantos anos os arquivos têm?

Se você não é o único com acesso raiz, eu suspeitaria que outra pessoa que seja, tente conversar com eles.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top