CentOS 5.5 php 5.1.6 编译升级到php 5.3.3

首先安装一些自带的组件

一、升级系统yum update

二、安装编译工具 yum –y install gcc gcc-c++ make automake autoconf

三、WEB服务组件yum –y install httpd php mysql mysql-server postgresql php-mysql php-pgsql php-mcrypt php-mhash php-mbstring php-xml php-gdsqlite python-sqlite

编译PHP 5.3.3准备工作

四、yum –y install postgresql-devel mysql-devel httpd-devel openssl-devel libxml2-devel zlib-devel curl-devel libmcrypt-devel mhash-devel libjpeg-devel libpng-devel gd-devel freetype-devel libtool-ltdl-devel

编译脚本

#!/bin/sh./configure \–prefix=/opt/php-5.3 \–sysconfdir=/opt/php-5.3/etc \–with-config-file-path=/opt/php-5.3/etc \–with-config-file-scan-dir=/opt/php-5.3/etc/conf.d \–with-apxs2=/usr/sbin/apxs \–with-curl=shared \–with-gd=shared –with-jpeg-dir –with-png-dir \–with-mcrypt –with-mhash –enable-mbstring \–with-kerberos –with-gettext –enable-bcmath \–with-mysql=shared –with-mysqli=/usr/lib64/mysql/mysql_config –with-pdo-mysql=shared \–with-pgsql=shared –with-pdo-pgsql=shared –with-sqlite=shared \–enable-pdo=shared –with-pdo-sqlite=shared \–with-openssl –enable-ftp –with-pear –with-zlib \–enable-inline-optimization –enable-calendar –enable-magic-quotes \–enable-sockets –enable-sysvsem –enable-sysvshm –enable-sysvmsg \–disable-debug \

常见问题

1. 系统中没有发现apxs

查看是否安装httpd-devel ,如果没装补上即可

2.Php 5.3.X中没有发现php.ini-disk模板文件

在php 5.3.X中模板改为php.ini-developmnet 和 php.ini-product ,我们用其中的php.ini-developmnet 将其重命名成php.ini并将其拷贝到/opt/php-5.3/etc(只针对以上编译参数起效的目录,请依据自己设置更改相应目录)下即可

3. 发现一个奇怪现象,就是一旦我操作了2的的php.ini到相应目录,,则无法正常解析部分PHP文件,如下

<? <?php

Phpinfo(); 可是我改为代码时 phpinfo(); 又可以正常解析PHP文件。

?> ?>

这时你需要在PHP.INI中修改一处设置,原来是php5.3.3 的 php.ini默认 short_open_tag = off,将其短标签设置为On即可。

4. PHP也升级好了,就是死活无法加载扩展组件,也包含无法连接MYSQL数据库?

添加或修改两处配置即可,以搜索extension找到

extension_dir = “/opt/php-5.3/lib/php/extensions/no-debug-non-zts-20090626”

extension=/opt/php-5.3/lib/php/extensions/no-debug-non-zts-20090626/mysql.so

天下没有不散的宴席,也许这人间真的只有朦朦胧胧才是真。

CentOS 5.5 php 5.1.6 编译升级到php 5.3.3

相关文章:

你感兴趣的文章:

标签云: