SitecoreクライアントのASP.NETセッション状態のサポート


解説

Sitecoreは現在、Sitecoreクライアント、または、コンテンツ管理環境でのアウトプロセス セッション状態の使用をサポートまたは推奨しておりません。

Sitecore 8.0+

さらに検討した結果、Sitecoreは、Sitecoreクライアント、または、コンテンツ管理環境のアウトプロセス セッション状態の実験的サポートを廃止することを決定しました。

コンテンツ管理環境はインプロセス セッション状態に依存する必要があり、複数のCMインスタンスを使用する環境では、複数のリクエスト間でセッション状態データを永続化するためにスティッキー セッションを使用する必要があります。

Sitecoreクライアントのアウトプロセス セッション状態のサポートについては、今後のSitecoreバージョンで完全なサポートを導入するか再検討される予定です。

Sitecoreクライアントのアウトプロセス セッション状態構成をすでに利用しているお客様のために、Sitecoreは、インプロセス セッション状態設定への移行に関する実験レベルのサポートまたは支援を引き続き提供します。

Sitecore 7.5 Update-1

Sitecore 7.5 Initial Releaseで、Sitecoreクライアントがアウトプロセス セッション状態モードで使用できない問題は、Sitecore7.5 Update-1で修正されました。
アウトプロセス セッション状態モードでの追加の修正が、Sitecore7.5 Update-1で行われました。

Sitecore 7.5 Initial Release

Sitecoreクライアントがアウトプロセス セッション状態モードで使用できない問題がSitecore 7.5 Initial Releaseで発見されました。Sitecoreクライアントを使用すると、以下のようなシリアル化エラーが発生する場合があります:

ERROR Application error.
Exception: System.Web.HttpException
Message: Unable to serialize the session state. In 'StateServer' and 'SQLServer' mode, ASP.NET will serialize the session state objects, and as a result non-serializable objects or MarshalByRef objects are not permitted. The same restriction applies if similar serialization is done by the custom session state store in 'Custom' mode.
Source: System.Web
   at System.Web.Util.AltSerialization.WriteValueToStream(Object value, BinaryWriter writer)
   at System.Web.SessionState.SessionStateItemCollection.WriteValueToStreamWithAssert(Object value, BinaryWriter writer)
   at System.Web.SessionState.SessionStateItemCollection.Serialize(BinaryWriter writer)
   ...
Sitecore 7.0 Update-3

アウトプロセス セッション状態モードのさらなる修正が、7.0 Update-3で行われました。

Sitecore 6.5.0 Update-5 (Service Pack-1)

Sitecore 6.5.0 Update-5では、CMS 6.5.0 Update-5以降、SqlServer、StateServer、およびその他のアウトプロセス セッション状態モードでSitecoreクライアントを使用するための実験的なサポートが導入されました。

コンテンツの編集やパブリッシュなどのコア機能は期待どおりに機能するはずですが、弊社ではまだ対処されていない問題がいくつかあることを認識しております。そのため、この機能の評価には使用できますが、まだ本番環境での利用に対応しているとは見なされていません。

Sitecore 6.5.0 Update-4以前

6.5.0 Update-4以前のSitecoreバージョンでは、Sitecoreクライアントはインプロセス セッション状態モードのみをサポートします。

解決策

Sitecore 7.5 Initial Releaseでのシリアル化の問題を解決するには、以下の手順を実施してください。

  1. Sitecore CMS 7.5 rev. 141003 Hotfix 424008-1.zipのhotfixをダウンロードします。
  2. Sitecoreインストール ウィザードを使用してhotfixをインストールします。