如何修复Windows上的'php_redis.dll加载失败,%1不是有效的Win32应用程序'错误

时间:2019-05-10 06:59:38

标签: phpredis

我添加了

  

/ php / ext文件夹中的php_redis.dll文件

并添加

  php.ini文件中的

extension = redis。

我正在Windows 10上使用64位xampp服务器。这是我在错误日志中看到的内容:

  

警告:PHP启动:无法加载动态库'php_redis.dll'   (尝试:C:\ xampp \ php \ ext \ php_redis.dll(%1不是有效的Win32   应用程序。),C:\ xampp \ php \ ext \ php_php_redis.dll.dll(指定   找不到模块。))在第0行的未知中

有人遇到类似的问题吗?为此,我们有可行的解决方案吗?

1 个答案:

答案 0 :(得分:0)

好吧,伙计们,我有同样的错误并做了一些测试))

我只有基于 x86 的解决方案,我将它用于我的网络开发,在 Windows 10 x64 上运行 100%,所以

  1. 通过以下链接下载并安装适用于 Windows 的 Redis 3.2.100 x64(或最新的 https://github.com/MicrosoftArchive/redis/releases/): https://github.com/microsoftarchive/redis/releases/download/win-3.2.100/Redis-x64-3.2.100.msi

  2. 使用 PHPInfo 和附加信息检查并保存您的 PHP 版本的文本文件:VC14 或 VC15、x86 或 x64、线程安全或非线程安全 - 您可以使用以下命令进行检查:php -i|findstr " Thread” - 如果启用,则使用 TS 版本。

如果你还没有安装 PHP 下载并解压(安装)PHP v7.3.25 NTS Win32 VC15 x86,用这个链接: https://windows.php.net/downloads/releases/php-7.3.25-nts-Win32-VC15-x86.zip

  1. 下载适用于 PHP 7.3 NTS VC15 x86 的 Redis v5.1.1,(或最新的 https://pecl.php.net/package/redis 点击 DLL 并选择所需的 PHP 7.x 版本并检查 TS 或 NTS 版本)或使用此链接: https://windows.php.net/downloads/pecl/snaps/redis/5.1.1/php_redis-5.1.1-7.3-nts-vc15-x86.zip

  2. 用小符号创建目录:

    C:\php\ext

  3. 解压 php_redis-5.1.1-7.3-nts-vc15-x86.zip 压缩包,复制两个文件到 C:\php\ext 目录:

    php_redis.dll

    php_redis.pdb

  4. 在 PHP 目录中编辑 php.ini: 搜索和编辑您的“路径和目录”部分,如下所示:

    ;include_path = ".;c:\php\includes"

    ;http://php.net/include-path

    ;extension_dir =

    doc_root =

    user_dir =

还搜索和编辑您的“动态扩展”部分,添加行:

extension=php_redis.dll

  1. 运行 Web 服务器并测试您的 PHPInfo,您需要查看 Redis 扩展部分!