在mac M2上使用brew安装的php手动编译php-redis后,为什么phpinfo()中没有显示redis模块?(编译.模块.安装.显示.M2...)

wufei123 发布于 2025-03-24 阅读(5)

在mac m2上使用brew安装的php手动编译php-redis后,为什么phpinfo()中没有显示redis模块?

Mac M2 上使用 Homebrew 安装 PHP 并手动编译 php-redis 后,phpinfo() 缺失 Redis 模块?

在 macOS M2 上,使用 Homebrew 安装 PHP 并手动编译 php-redis 扩展后,命令行 php -m 显示 redis 模块已安装,php -r 命令也验证了其功能,但浏览器中 phpinfo() 却无法显示该模块。本文分析此问题并提供解决方法。

您已成功验证命令行环境下的 redis 模块:

php -m  // 显示 redis 模块
php -r "if (new redis() == true){ echo \"\r\n ok \r\n\"; }" // 返回 "ok"

然而,phpinfo() 仍未显示 redis 模块。您已确认 php.ini 文件路径为 /opt/homebrew/etc/php/7.3/php.ini,并已添加 extension=redis 配置。

问题可能出在以下几个方面:

  1. PHP 版本不一致性: 命令行和 Web 服务器使用的 PHP 版本可能不同。请分别使用 php -v (命令行) 和 phpinfo() (浏览器) 查看版本号,确保一致。

  2. PHP 配置文件不一致性: phpinfo() 中的 Loaded Configuration File 指示的配置文件路径可能与您手动修改的 /opt/homebrew/etc/php/7.3/php.ini 不一致。 Web 服务器可能使用了不同的 php.ini 文件。

  3. Web 服务器 PHP 配置: Apache 或 Nginx 等 Web 服务器需要正确配置才能加载 redis 模块。检查 Web 服务器配置文件,确保其指向正确的 php.ini 文件并已正确加载 redis 扩展。

  4. Web 服务器重启: 即使配置文件已正确修改,也需要重启 Web 服务器(例如 Apache 或 Nginx)才能使更改生效。

通过检查以上四个方面,您应该能够解决 phpinfo() 中缺失 redis 模块的问题。如果问题仍然存在,请检查系统日志或其他相关配置文件以查找更详细的错误信息。

以上就是在mac M2上使用brew安装的php手动编译php-redis后,为什么phpinfo()中没有显示redis模块?的详细内容,更多请关注知识资源分享宝库其它相关文章!

标签:  编译 模块 安装 

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。