服务器运行的是 PHP 5.1.6,因此我们通过运行 yum update 对其进行了更新。此操作将 PHP 更新为 5.3.3,运行 php -v 将显示此版本。但是,重新启动 apache 后,phpinfo() 报告 PHP 版本仍为 5.1.6。
服务器上是否存在两个版本的 PHP?这是怎么回事?
答案1
您还需要升级 PHP 的 Apache httpd 模块。通常,PHP 有三个软件包:一个用于 CLI,一个用于 FastCGI 和 CGI,一个用于 mod_php。
答案2
你重启了 apache 吗?
service httpd restart
答案3
通过 LoadModule 指令检查哪个 libphp5.so 已加载到您的 Apache 中。然后查看此文件是否是您的 php5 软件包的一部分(不确定它在 centos 中的名称是什么):。rpm -qf <path/to/libphp5.so>
如果该文件不属于任何软件包,那么您应该将 Apache 配置指向通过 rpm 软件包提供的 libphp5.so。
答案4
我个人使用 IUS 项目作为我的 CentOS 软件包。PHP 和 MySQL 保持最新状态。