/ / SiteMapPathがASP.NET 4で表示を停止する - asp.net、iis-7.5、sitemapprovider、sitemappath、xml-sitemap

SiteMapPathがASP.NET 4での表示を停止する - asp.net、iis-7.5、sitemapprovider、sitemappath、xml-sitemap

ページにSiteMapPathコントロールがあり、これは、デフォルトのプロバイダを持つXML Web.sitemapファイルにバインドされています。このサイトは何年も前からあり、最近Windows 2008 R2上のIIS 7.5上でASP.NET 4.0にアップグレードしました。アプリケーションプールを再起動するか、web.configファイルまたはweb.sitemap XMLファイルを変更して保存すると、SiteMapPathは再び読み込みを開始します。

誰もがこれを引き起こしている可能性があることについて何か考えを持っていますか?私はプロセスエクスプローラを使用して見ることができるようにファイルを開いたままにするファイルハンドルはありません。

ありがとう、

ジョン

回答:

回答№1は2

私達は長い間これに苦労しましたが、結局Microsoftに何が起こっているのかを理解させることができました。 MSはこの修正プログラムで対処しました。 http://support.microsoft.com/default.aspx?scid=kb;en-US;2472263

私達の場合、ウェブサイトへの最初のリクエストならCookieのないデバイスからのもの(私たちの場合はRussionボット、Yandex)であり、サイトマップはクックレスURLで構築されキャッシュされます。その場合、Cookieをサポートするデバイスは、サイトマップがクックレスセッション用のURLでキャッシュされた方法のために動作しません。最初の症状はランダムでしたが、最終的にはこのボットからの最初のリクエストが続くアプリプールのリサイクルに限定することができました。

Cookieを強制したい場合は、web.configを変更してください。

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

これにより、CookieのないURLを使用せずにサイトマップが構築されるようになります。

お役に立てれば!!