在Azure上的应用之间共享Redis会话

时间:2018-12-20 16:15:31

标签: azure session redis

我们正在将一个大型项目拆分为多个较小且易于管理的项目。我们希望使用Redis作为会话存储在Azure上运行它们。在开发计算机上,我已经配置了两个应用程序-分别称为app1和app2-以在本地安装Redis时运行。我首先运行localhost / app1 /,它将一些数据加载到Session中。然后,我将Response.Redirect重定向到localhost / app2 /,并且Session值也在那里可用。 我已在Azure上安装Redis,并将这些应用程序安装为同一Re​​sourceGroup中的单独AppServices。我将两个应用程序中的web.config文件都更改为使用Azure Redis。我可以运行app1.azurewebsites.net并看到它正确地使用了Session在页面之间传递数据,但是当我重定向到app2.azurewebsites.net时,Session数据不可用。

我可以看到app2中的Session ID与app1中的Session ID不同,因此很显然,这就是数据不同的原因。 我已经在两个应用程序的web.Config中的sessionState提供程序中将applicationName值设置为相同的值。 我创建了一个machineKey并将其设置在两个应用程序的web.Config中。 我已经阅读了关于该主题的所有文章,但仍然无法使用。

有什么想法吗?

0 个答案:

没有答案