RedisSessionStateProvider ERR 未知命令 'EVAL'

RedisSessionStateProvider ERR unknown command 'EVAL'

当我在本地 运行 Microsoft.Web.Redis.RedisSessionStateProvider 时,出现以下错误:

StackExchange.Redis.RedisServerException: ERR unknown command 'EVAL'

我已经从 nuget 安装了最新的 RedisSessionStateProvider。

网络配置:

 <sessionState mode="Custom" customProvider="MySessionStateStore">
  <providers>

    <add name="MySessionStateStore" type="Microsoft.Web.Redis.RedisSessionStateProvider" host="" accessKey="" ssl="false" />
  </providers>
</sessionState>

我运行正在使用 2.6 之前的 redis 服务器版本。

为 windows 获取 redis 服务器的快捷方式是通过 chocolatey。

从这里安装:https://chocolatey.org/

然后从这里使用命令获取redis: https://chocolatey.org/packages/redis-64/3.0.501

然后去C:\ProgramData\chocolatey\lib\redis-64和运行redis-server.exe

然后您需要安装为服务(请参阅 C:\ProgramData\chocolatey\lib\redis-64 中的注释)

或者从这里获取 windows 安装程序 msi(如果您不太介意版本,即仅用于开发,则更容易)https://github.com/MSOpenTech/redis/releases

你应该像@SSED 说的那样升级你的 Redis。你可以在这里下载 32 位版本的 redis: https://github.com/cuiwenyuan/Redis-Windows-32bit

此外,如果还有其他错误 "Active machine refused It" 您应该 运行 redis-server.exe 下载文件后。

如果您的服务器实例大于或等于 2.6,但 EVAL 命令已明确重命名,也会发生这种情况。后者有时出于安全原因在作为服务提供的 redis 服务器(例如 CloudFoundry)

上完成