CentOS7下Apache切换至已安装PHP7.2版本的问题咨询
问题解答
一、修改/etc/httpd/conf/extra/httpd-phpmodules.conf中的LoadModule行是否正确?
这个操作是正确的核心解决方向,但需注意以下细节:
- 先注释掉原有PHP 5.6的模块加载行(例如
# LoadModule php5_module ...),避免模块冲突。 - 新增PHP 7.2的模块加载配置,CentOS 7上PHP7.2的Apache模块通常命名为
php72_module,对应模块文件路径多为/usr/lib64/httpd/modules/libphp72.so(64位系统)或/usr/lib/httpd/modules/libphp72.so(32位系统)。 - 修改完成后,务必重启Apache服务生效:
systemctl restart httpd,之后通过phpinfo验证版本是否切换成功。
二、yum无法识别已装PHP7模块时,如何查找模块路径?
由于你可能通过源码编译或第三方非yum源方式安装PHP7.2,导致yum无法追踪,可通过以下方法定位:
- 使用
php-config工具:执行php-config --extension-dir,该命令会输出PHP模块的安装目录,可在该目录下查找libphp72.so文件。若php-config不在PATH中,需使用绝对路径(如/usr/local/php/bin/php-config,根据实际安装路径调整)。 - 全局搜索模块文件:执行
find / -name "libphp7*.so" 2>/dev/null,该命令会遍历系统查找PHP7的Apache模块文件,输出结果即为模块绝对路径。 - 检查手动安装目录:若为源码编译安装,PHP7默认安装目录多为
/usr/local/php/,可进入该目录下的libexec或modules子目录查找目标模块文件。
内容的提问来源于stack exchange,提问作者Marco
相关产品推荐
相关产品推荐

