ID da Sessão IIS7 girando com ASP Clássico

2

Estou tentando migrar um aplicativo ASP clássico para um servidor Windows 2008 R2.

Os recursos do aplicativo funcionam bem, mas estou tendo problemas com a sessão.

O aplicativo mantém as informações do usuário conectadas em sessão e estou constantemente sendo eliminado como se a sessão tivesse expirado.

Durante a depuração, descobri que as sessões não estão expirando, mas, em vez disso, estou obtendo 2-3 IDs de sessão diferentes em uso por um navegador.

Estou exibindo Response.Write (Session.SessionID) em várias páginas do aplicativo, e posso sentar-me lá e pressionar novamente várias vezes e observar o número alterado entre esses 2-3 SessionIDs aleatoriamente.

As sessões ainda são válidas porque quando eu atualizo e obtenho a identificação de sessão que eu loguei sob a página é exibida (porque a verificação de segurança foi bem sucedida) e quando eu obtenho uma das outras IDs de sessão eu recebo o não está logado, você precisa fazer o login "mensagem.

Se eu fechar e reabrir o navegador, a mesma história apenas o conjunto de IDs é novo.

Isso acontece com o IE8, o Firefox e o Chrome de vários computadores.

Coisas que eu tentei:
 - AppPool definido como sem código gerenciado e clássico -  - Cache de saída definir .asp para nunca armazenar em cache  - ASP Sessão Propriedades habilitado e desabilitado estado da sessão asp e confirmou a página afetada (erro ao tentar ler Session.SessionID quando desativado)

Coisas que eu tentei apenas no caso, mas não deveria ter nada a ver com o ASP Session:
 - Compressão desativada
 - Propriedades do Estado da Sessão ASP.Net Alteradas (InProc, StateServer, SQLServer, Cookies, URI, etc)  -

    
por ManiacZX 17.03.2010 / 18:54

1 resposta

2

Verifique as configurações do web garden para o pool de aplicativos. Se for maior que 1, o site será executado em mais de um processo de trabalho. O estado da sessão no ASP Clássico depende de uma única instância da memória em processo. É muito raro que o web garden precise ser configurado para algo diferente de 1.

Um webfarm com balanceamento de carga round-robin teria o mesmo problema, mas seu post não sugere que você tenha isso.

    
por 17.03.2010 / 19:06