PHP已编译,但phpinfo()显示旧版本

时间:2014-09-17 12:54:15

标签: php linux apache centos centos5

我试图在CentOS上将PHP从5.2升级到5.3,但phpinfo()仍然声称安装了PHP 5.2。

通过编译Apache 1.3然后使用apxs构建PHP来构建PHP:

# cd ../php-5.3.29
# ./configure --with-apxs=/usr/local/apache-php/bin/apxs --with-mysql=/usr/include/mysql --with-gd --with-jpeg-dir --with-png-dir --enable-mbstring --with-mysqli --with-pdo-mysql --with-mysql-sock=/var/lib/mysql/mysql.sock --with-curl=/usr
# make
# make test
# make install

这似乎有效。我重新启动整个服务器,然后像这样启动Apache:

/usr/local/apache-php/bin/httpd -f /path/to/httpd.conf -D PERLDB -DSSL

Apache正在运行,Apache模块服务器状态正在返回2014年9月16日Apache的构建日期,这是正确的。但是,phpinfo()正在显示:

PHP Version 5.2.6
Build Date Mar 6 2014
Configure Command './configure' '--with-apxs=/usr/local/apache-centosssl-php/bin/apxs' '--with-mysql=/usr/include/mysql' '--with-gd' '--with-jpeg-dir' '--with-png-dir' '--enable-mbstring' '--with-mysqli' '--with-pdo-mysql' '--with-mysql-sock=/var/lib/mysql/mysql.sock' '--with-curl=/usr' 

/ usr / local / apache-centosssl-php /是2014年3月为PHP 5.2编译的Apache之前版本的路径。似乎Apache正在启动并使用我以前的PHP编译中的一些旧文件?

在命令行中,我得到:

# php -v
PHP 5.3.29 (cli) (built: Sep 16 2014 16:53:53) 
Copyright (c) 1997-2014 The PHP Group
Zend Engine v2.3.0, Copyright (c) 1998-2014 Zend Technologies

我在php.ini和httpd.conf中搜索了“apache-centosssl-php”,并且没有出现。

1 个答案:

答案 0 :(得分:1)

我忘了我在Apache中使用符号链接链接到PHP模块:

libexec -> /usr/local/apache-centosssl-php/libexec

我将其修改为

libexec -> /usr/local/apache-php/libexec

现在似乎正在运作。