gpt4 book ai didi

asp.net - 使用 Azure Redis 缓存 session 状态提供程序维护跨不同域的 session

转载 作者:可可西里 更新时间:2023-11-01 11:20:41 27 4
gpt4 key购买 nike

如何使用 Azure Redis 缓存 session 状态提供程序在不同的 Web 应用程序之间共享相同的 session 状态?

我的两个应用程序的 Web.config 都是这样的:

<sessionState mode="Custom" customProvider="MySessionStateStore">
<providers>
<add name="MySessionStateStore"
type="Microsoft.Web.Redis.RedisSessionStateProvider"
port="6380"
host="[myhostname].redis.cache.windows.net"
accessKey="[mykey]"
throwOnError="true"
applicationName="[mySharedAppName]"
ssl="true" />
</providers>

最佳答案

您通常需要做两件事:

  1. 将两个应用的 web.config 中的 applicationName 属性设置为相同的字符串值。

  2. 如果应用程序位于不同的 IIS 站点或不同的服务器中,您可能需要更改 cookie scope用于 ASP.NET 在后台为您发送到浏览器的 ASP.NET_SessionId cookie。如果该 session cookie 的范围不包含这两个应用程序,您就会遇到麻烦:网络浏览器将使用不同的 session cookie,并且您的 session 不会被共享。但是,如果您在同一站点下只有两个应用程序目录,那么您不需要考虑这一点。

关于asp.net - 使用 Azure Redis 缓存 session 状态提供程序维护跨不同域的 session ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34786277/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com