/ / SiteMapPath wird in ASP.NET 4 angehalten - asp.net, iis-7.5, sitemapprovider, sitemappath, xml-sitemap

SiteMapPath Stoppt die Anzeige in ASP.NET 4 - asp.net, iis-7.5, sitemapprovider, sitemappath, XML-Sitemap

Wir haben ein SiteMapPath-Steuerelement auf der Seite undDies ist an eine XML-Web.sitemap-Datei mit dem Standardanbieter gebunden. Wir hatten diese Site seit Jahren und haben kürzlich ein Update auf ASP.NET 4.0 unter IIS 7.5 unter Windows 2008 R2 durchgeführt. Aus irgendeinem Grund, nach etwa 6-12 Stunden Betriebszeit (nicht sicher, wann genau, aber es ist konsistent) SiteMapPath beendet den Ladevorgang für alle Benutzer: Wenn wir den Anwendungspool neu starten oder die web.config- oder web.sitemap-XML-Dateien ändern und speichern, wird der SiteMapPath erneut geladen.

Hat jemand irgendwelche Ideen, was das verursachen könnte? Es gibt keine Dateihandles, die die Datei offen halten, die ich mit dem Process Explorer sehen kann.

Vielen Dank,

John

Antworten:

2 für die Antwort № 1

Wir hatten lange Zeit damit zu kämpfen, konnten aber schließlich Microsoft dazu bringen, herauszufinden, was los war. Kurzgeschichte ist, dass MS es mit diesem Hotfix angesprochen hat: http://support.microsoft.com/default.aspx?scid=kb;en-US;2472263

In unserem Fall erfolgt die erste Anfrage an die Websitewar von einem küchenlosen Gerät (in unserem Fall war es ein russischer Bot, Yandex), die Sitemap würde mit kochlosen URLs erstellt und zwischengespeichert. Geräte, die Cookies unterstützten, funktionierten jedoch nie, da die Sitemap mit URLs für kochlose Sitzungen zwischengespeichert wurde. Während die Symptome anfänglich zufällig waren, konnten wir sie letztendlich auf einen App-Pool-Recycling beschränken, gefolgt von der ersten Anforderung von diesem Bot.

Eine alternative Problemumgehung, die funktioniert, wenn Sie Cookies erzwingen möchten, ist diese Änderung an der web.config vorzunehmen:

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

Dies erzwingt die Erstellung der Sitemap ohne die Verwendung von URLs ohne Cookies.

Hoffe das hilft!!