在Windows 7 64位XAMPP上使用phpredis

19

我正在尝试在我的Windows机器上让Redis运行以进行开发。我已经使用phpredis客户端在我的Ubuntu 10.04服务器上成功运行了Redis。

目前,在我的Windows机器上,我可以启动Redis服务器,因为它不需要安装,非常适合开发,但是我无法弄清楚如何安装phpredis。它似乎非常混乱,我已经花了两天时间研究这个问题,但没有结果。

我用Git克隆了源文件,但是我是在Git Bash中执行的最后一条命令,与ubuntu相同的方式。我还下载了两个.dll文件,一个带有“ts”,另一个带有“nts”,不知道它们之间的区别:/

http://commandperls.com/install-phpredis/ 这里有安装phpredis的手册,但它仅适用于我的Ubuntu。我对命令行非常新手,不确定它是否可以在Windows上工作,如使用命令提示符或Git Bash。

那么我的问题是,我如何使phpredis在Windows上工作?有什么办法可以做到这一点吗?我知道有Predis,我已经尝试过了,但由于我计划在服务器上使用phpredis,因此我想在开发机器上使用相同的客户端。


1
实际上,对我来说,在Windows上安装和使用Redis也是非常令人望而生畏的。但在成功使用后,我在Linkedin上撰写了一篇文章,分享了我的经验。请看这里:使用PHP在Windows上使用Redis - Shekhar Joshi
4个回答

31

找到了!对于一个对服务器管理知之甚少的人来说,这整个情况确实非常令人困惑。无论如何,以下是我的解决方案。

链接

上面的链接提供了 .dll 文件,我需要将其复制到我的情况下:C:\xampp\php\ext 并在 php.ini 文件中添加一行 extension=php_redis.dll 最后重新启动 apache2 服务。

就是这样,不需要安装任何东西,只要 redis 服务器已经运行起来,这将提供 php 和 redis 之间的连接!

2020-05-06 更新

看起来以前的链接只包含过时的 .dll 文件。 @Niz 在评论中提供了一个更新的网址,在那里您可以下载适用于 Windows 的正确版本的 redis DLL。确保下载与您的 redis 和 php 版本匹配的版本。

https://pecl.php.net/package/redis


这个对你还管用吗?我已经尝试在我的WAMP安装中按照你的步骤操作,但是我收到了以下信息:PHP启动:无法加载动态库php_redis-2.1.3-5.3-ts.dll - %1不是有效的Win32应用程序。 - Thomas
很抱歉,我不知道,已经很久没有使用了。我只能说我是在64位Windows机器上使用标准的XAMPP安装包。 - Giedrius
我尝试添加它,但出于某种原因我无法访问我的Redis服务。 - Valentino Pereira
1
最新的二进制文件可以在官方仓库中找到,网址为https://pecl.php.net/package/redis/X.y.z/windows,其中X.y.z是Redis版本号。截至2020年2月13日,在pecl仓库中可用的最新版本是5.1.1,因此下载的网址应该是https://pecl.php.net/package/redis/5.1.1/windows。 - Niz
你应该下载与你的PHP版本和Redis版本相匹配的文件。 - Giedrius
显示剩余3条评论

10

1

这对我很有帮助:

参考文章https://www.linkedin.com/pulse/using-redis-windows-php-shekhar-joshi/

检查 phpinfo() 中的所有信息,例如 x86、php 版本和线程安全。

从文章中获取有用的部分:

https://pecl.php.net/package/redis/2.2.7/windows 下载 PECL 扩展程序,你需要知道哪个版本适用于你。首先检查你的 php 版本,并了解是否启用了线程安全(可以使用 phpinfo() 来进行检查)。下载适当版本的 dll 文件,如果启用了线程安全,则使用 ts 版本,否则使用 nts 版本。解压文件并将 .dll 文件复制到 xamp/php/ext 目录下。接下来,打开位于(xampp/php)的 php.ini 文件,并添加此字符串 extension="php_redis.dll" 和其他扩展程序一起。


嘿,我怎么知道应该下载哪个 redis.dll?我应该基于什么来选择,redis-server? - TheBAST

1

我不理解为什么会被踩:这是一个适用于最新版本Php的有效链接。 - Alex Poca

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接