por que meu iis 7.5 está criando vários cookies ASPSESSIONID no asp clássico?

2

Eu tenho o Windows Home Server 2011 SP1 de 64 bits. Ele está executando o IIS 7.5 e tem um aplicativo clássico asp nele. Estou obtendo lentidão por cliente de vez em quando. Com isso, quero dizer que um navegador específico se comportará como se o servidor não fosse encontrado. Outros navegadores na mesma máquina são bons, e outras máquinas na rede também são boas.

Instalei o IIS7.5 e adicionei meu aplicativo asp clássico. Configurei o pool de aplicativos para permitir o acesso de 32 bits para o meu com e configurei o IIS para enviar os erros reais. Eu configurei cabeçalhos HTTP comuns - "http keep alive" e "expire conteúdo da web imediatamente", para ver se eles ajudam (não). Isso é tudo que eu mudei.

O aplicativo não possui um banco de dados. Não usa autenticação integrada. Não interop com dotnet. Não está fazendo nada inteligente ou complicado. Se eu reduzir o problema para uma página que define um cookie e nada mais, o problema ainda aparece depois de um tempo.

Após a inspeção do navegador quando isso acontece, há sempre vários cookies ASPSESSIONID (por exemplo, mais de 30). Eles se parecem com isso:

Cookie:ASPSESSIONIDSCRQTCBT=JCFJPAHDDFOOBJCDHCIPHDCH; ASPSESSIONIDCQQSTQAC=MAJHOOJCFEDLCLPNALLILMCL; ASPSESSIONIDAQTTRQBD=OGIPPIFDHODGGANGGPPJFJGI; ASPSESSIONIDQCCQCRBC=IINDIKMBMNABDJKMCKMFMFOF; __utma=104959943.97773051.1372652641.1372652641.1372652641.1; __utmc=104959943; ASPSESSIONIDSQDRCSCQ=JHCNKOADBNKDMCLKFFCCINJD; ASPSESSIONIDQSQQDDSQ=OLFFMCCDBBNCLDKEFEAEIONM; ASPSESSIONIDSSSBTCCD=NBLNLHMBEOANIGDHHLFHNENH; ASPSESSIONIDACQRATQT=DKJNFHODFIDJJBFEFMBEBBLB; ASPSESSIONIDQSSSRTDD=ICCNACFCIPMAHJEPHDJBNMPA; ASPSESSIONIDASDBABDS=PANLJLOCMFAFGHEEEGAPJNPM; ASPSESSIONIDASAACACS=PIDJNIPCLOJCKINLBLCBPJED; 

etc.

Esse horror é eventualmente seguido pelo par de cookies reais que eu configurei. Eu não uso este ASPSESSIONID - para que serve, posso me livrar dele? É provável que seja uma causa da minha lentidão?

    
por frumbert 03.02.2014 / 07:08

2 respostas

3

É muito improvável que o (s) cookie (s) ASPSession tenha alguma coisa a ver com o seu problema.

Se você não usar o estado da sessão em seu site ASP, poderá desativá-lo no IIS.

No gerenciador do IIS, selecione seu site e clique no ícone ASP, na parte inferior, expanda Session Properties e defina Enable Session State como False , você não terá mais esse cookie.

Por que existem dois? O mecanismo ASP clássico define um cookie quando cria uma sessão para um usuário, se por qualquer motivo, perder essa sessão (como o AppPool é reciclado), ele define um novo cookie para uma nova sessão. O navegador mantém o antigo, porque não sabe que não é mais válido o servidor.

    
por 10.02.2014 / 20:12
0

Eu também tive esse problema. Eu acho que o tamanho máximo para um cookie de domínio é 4k, então algum comportamento estranho que eu experimentei foi na verdade devido ao espaço de 4k sendo preenchido com dados falsificados do cookie ASPSESSIONID.

A solução de javascript da Anton resolveu o problema para mim: link

    
por 02.10.2014 / 11:34