我创建了asp.net identity application(oath& owin)并创建了一些注册用户,并且我在azure web app服务上托管了这个应用程序,所以当我想将这个从1个实例扩展到很多时我需要更改inproc会话状态模式,根据建议自定义或使用redis。
现有
<sessionState mode="InProc" customProvider="DefaultSessionProvider" >
<providers>
<add name="DefaultSessionProvider" type="System.Web.Providers.DefaultSessionStateProvider, System.Web.Providers, Version=2.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" connectionStringName="DefaultConnection" />
</providers>
</sessionState>
已更改为
<sessionState mode="Custom" customProvider="DefaultSessionProvider" >
<providers>
<add name="DefaultSessionProvider" type="System.Web.Providers.DefaultSessionStateProvider, System.Web.Providers, Version=2.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" connectionStringName="DefaultConnection" />
</providers>
</sessionState>
虽然它已针对指向数据库创建了 Sessions 表,但在此之后登录对任何用户都无效?为什么???
此外,我尝试将其替换为redis提供程序,如下所示,但同样的问题
<sessionState mode="Custom" customProvider="RedisSessionProvider">
<providers>
<add name="RedisSessionProvider"
type="Microsoft.Web.Redis.RedisSessionStateProvider"
port="6380"
host="[my url]"
accessKey="[my key]"
ssl="true" />
</providers>
</sessionState>