/ / SiteMapPath deja de mostrarse en ASP.NET 4: asp.net, iis-7.5, sitemapprovider, sitemappath, xml-sitemap

SiteMapPath deja de mostrarse en ASP.NET 4: asp.net, iis-7.5, sitemapprovider, sitemappath, xml-sitemap

Tenemos un control SiteMapPath en la página yesto está enlazado a un archivo XML Web.sitemap con el proveedor predeterminado. Hemos tenido este sitio durante años y recientemente hemos actualizado a ASP.NET 4.0 en IIS 7.5 en Windows 2008 R2. Por alguna razón, después de aproximadamente 6 a 12 horas de funcionamiento (no estoy seguro de cuándo, pero es consistente), SiteMapPath deja de cargarse para todos. Si reiniciamos el grupo de aplicaciones o modificamos y guardamos los archivos web.config o web.sitemap, el SiteMapPath comienza a cargarse nuevamente.

¿Alguien tiene alguna idea de lo que podría estar causando esto? No hay manejadores de archivos que mantengan abierto el archivo que puedo ver usando el explorador de procesos.

Gracias,

John

Respuestas

2 para la respuesta № 1

Luchamos con esto durante mucho tiempo, pero al final pudimos lograr que Microsoft se diera cuenta de lo que estaba pasando. La historia corta es MS lo ha abordado con este hotfix: http://support.microsoft.com/default.aspx?scid=kb;en-US;2472263

En nuestro caso, si la primera solicitud al sitio web.era de un dispositivo sin cookies (en nuestro caso era un bot de Russion, Yandex), el mapa del sitio se construiría con URL sin cocinar y se almacenaría en caché. Entonces, cualquier dispositivo que admitiera cookies nunca funcionaría debido a la forma en que el mapa del sitio se almacenó en caché con las URL para las sesiones sin problemas. Si bien los síntomas iniciales fueron aleatorios, finalmente pudimos restringirlo a un reciclaje de grupo de aplicaciones seguido de la primera solicitud de este bot.

Una solución alternativa que funciona si desea forzar las cookies es hacer este cambio en web.config:

<authentication mode="Forms">
<forms cookieless="UseCookies" />
</authentication>

Esto obliga a crear el mapa del sitio sin utilizar URL sin cookies.

¡¡Espero que esto ayude!!