AutoDetectを使用する場合のMSDNのドキュメントによると、現在ASP.NETのCookieなしのセッションで問題が発生しています。
ASP.NETは、要求元のブラウザーまたはデバイスがCookieをサポートしているかどうかを判断します。要求元のブラウザまたはデバイスがCookieをサポートしている場合、AutoDetectはCookieを使用してユーザーデータを保持します。それ以外の場合は、クエリ文字列で識別子が使用されます。ブラウザまたはデバイスがCookieをサポートしているが、Cookieが現在無効になっている場合でも、要求している機能によってCookieが使用されます。
クエリ文字列の部分に注意してください!さて、それが実際にURLに追加された場合、それは&sessionId=yoursessionidhere
すべて問題ありませんが、実際に私が取得するのは次のようなURLですhttp://yourserver/folder/(session ID here)/default.aspx
。
だから私の質問は:このURL改ざん方法の代わりにクエリ文字列を使用するようにASP.NETをどのように構成しますか?
アップデート:
web.configで使用するconfig値を追加しています。
<sessionState mode="StateServer" stateConnectionString="tcpip=127.0.0.1:42424" cookieless="AutoDetect" timeout="20" />