一、问题
在使用 PHP 时,部分用户遇到某个扩展无法加载的问题,表现为 `PHP Startup: Unable to load dynamic library ` 错误。
常见原因包括:
确认加载的 php.ini
php.ini 中扩展路径 extension_dir 设置错误
二、解决
查看当前 CLI 使用的 PHP 路径
which php
确认加载的 php.ini
php -i | grep 'Configuration File'
检查某个是否已加载,比如:检查 OpenSSL 是否已加载
php -m | grep openssl
Web 环境中查看完整配置
phpinfo()
若 CLI 与 Web 服务器(如 Nginx、FPM)使用不同 PHP 实例,需分别配置其 php.ini
修改 php.ini 文件:确保对应平台的 extension 行已取消注释(去掉分号),且 extension_dir 设置正确:
extension_dir = "/usr/local/lib/php/extensions/no-debug-non-zts-20190902/"
若路径错误,PHP 将无法定位到 openssl.so 文件
改完记得重载配置文件!!
PHP 第46章 P某个扩展无法加载