IIS6 O site 'quebra' quando visualizado usando o navegador Safari

3

Eu tenho um aplicativo que está usando o ASP.NET 4.0 Webforms no IIS 6.0 que está operacional há vários anos. Uma implantação recente no aplicativo causou alguns problemas intermitentes muito aleatórios (para nós) no navegador Safari (não em qualquer outro navegador).

Após a reinicialização do servidor, o aplicativo parece funcionar bem por períodos de tempo, mas depois "quebrará".

É 100% do nível do servidor, pois funciona em todos os computadores até que ele 'quebre'. Uma vez quebrado, ele é quebrado em todos os computadores que executam a versão exata do Safari. Se você alterar a versão do Safari ou alternar entre http e https, ela funcionará novamente, até que a versão 'quebre'

Parece que a quebra está vinculada aos cabeçalhos enviados para o servidor.

Uma vez que 'quebrado' tem problemas com CSS sendo aplicado a controles ASP.NET, o método addhistory gera erros de javascript porque não pode encontrar a função __dopostback.

    
por S.Kiers 16.01.2012 / 00:05

1 resposta

1

Resposta encontrada em: link

"It seems that I have found the root cause of the problem. The UserAgent -> BrowserCaps resolving mechanism uses a cache to temporarily store mappings. Unfortunately it uses (by default) the first 64 characters of the UserAgent string as cache key and THAT is just BS... Occasionally a user agent pops up that looks like a Safari, but really isn't and that one is not resolved properly (Mozilla 0.0), but the mapping is still stored in the cache, which means that all UserAgent strings with the same 64 character prefix are now incorrectly mapped as well until that cache entry expires (sliding window with 1 minute). The key length used for caching can fortunately be configured with

<browserCaps userAgentCacheKeyLength="..." />

in the config section.

I've upped the key length to 256 and since that the problem has disappeared. Now I'll try to figure out which UserAgent string was responsible for the cache poisoning in the firs place - and I'll update this post if I find anything."

    
por 21.03.2012 / 22:26