Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Pablo.p48l0

Sessões

Recommended Posts

Pessoal,

Estou tendo problemas com meu apache no servidor, as sessões simplesmente não encerram, e o apache trava após um número de clientes com sessoes abertas. Tenho um sistema onde o usuário faz o login e em seguida parte pra outra página, normalmente sem dar o logout na página. O apache deveria encerrar a sessão após o tempo definido em "session.cache_expire = 1", no php.ini, ou através da função "session_cache_expire(1)" usada em execução no script. Porém, simplesmente não funciona.. Já usei o código abaixo em diversos servidores e local aqui, e fica comprovado que o apache não encerra a sessão após 1 minuto de inatividade. Alguém tem uma luz? Obs. A funcao de fzer isso manualmente com time() nao adianta pra mim, pois a maioria dos usuarios vao pra outra página sem dar o logout.

 

 

ini_set("session.cache_expire", 1); 
ini_set("session.gc_maxlifetime", 1);	
session_cache_expire(1);

session_start();
	
if($_SESSION['teste']) echo $_SESSION['teste'];
	
#COMENTA ESSA LINHA E QUANDO RODAR A PRIMEIRA VEZ DESCOMENTA!!!!!!!!!
else exit('SESSAO EXPIRADA');
	
echo '<br><br><a href="session.php">testa</a>';
	
#date_default_timezone_set("America/Bahia");
echo '<br><br>'.date('H:i: s e T');
	
$_SESSION['teste'] = 'tempo ('.session_cache_expire().' minutos(s))';

Compartilhar este post


Link para o post
Compartilhar em outros sites

tem o script do login ? se possivel o da autentificação tambem :P ?

 

valww

 

obs: teu titulo tava com caixa alta.. isso vai contra as regras do forum *editei

Compartilhar este post


Link para o post
Compartilhar em outros sites

Não precisa, o codigo acima ja simula um login, basta comentar e depois descomentar a linha indicada la depois da primeira vez pra q ele registre a sessao.. Queria so saber se na maquina ai o apache encerra a sessao após 1 minuto.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Pessoal,

Já percorri toda a internet atrás desse tipo de problema e nada. Meu servidor apache está travando por alcançar o numero maximo de conexoes simplesmente pq o apache não está expirando as sessoes depois do determinado nos parametros do php.ini..

Já tentei de todos os modos e simplesmente não expira, nem local nem em produção.

Já usei recursos como:

 

session_cache_limiter ('private, must-revalidate');

session_cache_expire(1);

ini_set("session.cache_expire", "1");

ini_set("session.gc_maxlifetime", "1");

 

Nada funcionou!!

 

HELP PLEASE!!!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Pablo.p48l0, seus tópicos foram unidos, por tratarem do mesmo problema.

Não duplique tópicos, pois vai contra as normas do fórum.

Sugiro que leia o tópico de orientações para uma boa participação, em especial o link que trata das normas do fórum.

 

Carlos Eduardo

Compartilhar este post


Link para o post
Compartilhar em outros sites

Acessem http://central.advanx.com.br/amigo/session.php

 

O código é o seguinte:

<?php

session_cache_limiter ('nocache'); 
session_cache_expire(1);

ini_set("session.cache_expire", "1"); 
ini_set("session.gc_maxlifetime", "60");

session_start();

if($_GET['reg_sessao'] == 1) {

	$_SESSION['inicio'] = time();

}

//echo 't: '.$_SESSION['inicio'].'<br>';

if($_SESSION['inicio']) {

	echo '<br>Sessão registrada:<br>';
	echo '<br>-------------------------------<br>';
	echo '<br>Tempo definido em parâmetro: SessionExpire: '.session_cache_expire().' minutos(s) - Limiter: '.session_cache_limiter().' - MaxLife: '.ini_get("session.gc_maxlifetime").' segundo(s)';
	echo '<br>Tempo de inatividade: '.(time()-$_SESSION['inicio']).' segundos / '.date('H:i:s').'<br>'; $_SESSION['inicio'] = time();
	echo '<br><br><a href="session.php">Atualizar página</a>';

}
else {

	echo '<br>Sessão não registrada ou expirada!<br>';
	echo '<br>-------------------------------<br>';				
	echo '<br><br><a href="session.php?reg_sessao=1">Registrar sessão</a>';

}


?>

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.