Reputation: 525
When I run Microsoft.Web.Redis.RedisSessionStateProvider locally, I get the following error:
StackExchange.Redis.RedisServerException: ERR unknown command 'EVAL'
I have installed the latest RedisSessionStateProvider from nuget.
Web config:
<sessionState mode="Custom" customProvider="MySessionStateStore">
<providers>
<add name="MySessionStateStore" type="Microsoft.Web.Redis.RedisSessionStateProvider" host="" accessKey="" ssl="false" />
</providers>
</sessionState>
Upvotes: 12
Views: 16627
Reputation: 2528
This can also happen if your server instance is greater than or equal to 2.6, but the EVAL
command has been renamed explicitly. The latter is something that is sometimes done for security reasons on redis
servers that are offered as a service (e.g. CloudFoundry)
Upvotes: 0
Reputation: 1301
You should upgrade your Redis as @SSED said. You can download 32 bit version of redis here: https://github.com/cuiwenyuan/Redis-Windows-32bit
Also if there is another error "Active machine refused It" you should run redis-server.exe
file after downloading it.
Upvotes: 3
Reputation: 525
I was running a version of redis server pre 2.6.
Quick easy way to get redis server for windows is via chocolatey.
Install from here: https://chocolatey.org/
Then get redis using command from here: https://chocolatey.org/packages/redis-64/3.0.501
Then go to C:\ProgramData\chocolatey\lib\redis-64 and run redis-server.exe
You'd then need to install as a service (see notes in C:\ProgramData\chocolatey\lib\redis-64)
OR just get a windows installer msi from here (even easier if you don't mind the version too much i.e. just for development) https://github.com/MSOpenTech/redis/releases
Upvotes: 18