php5.2和php如何共存,CentOS 6+Apache环境下,PHP 5.2与 5.4共存

在 Linux 下,要装两个不同版本的 php 可不是下载两个 exe 那么简单。这里采用的方法,是手工编译 php 5.2 并使用 epel 源中的 php 5.4 。前者采用 fastcgi 模式运行,后者采用传统的 mod_php 来运行。

现在我们假设,环境中已经装好了 Apache 2.2 + MySQL 5.5 + PHP 5.4 ,并且希望加装一个 PHP 5.2.17 ,并且能够直接使用 MySQL 5.5。

首先需要安装 epel 。

rpm -ivh http://dl.fedoraproject.org/pub/epel/6/i386/epel-release-6-8.noarch.rpm

然后安装依赖:

yum install httpd-devel libxml-delvel openssl-devel bzip2-devel libcurl-devel libjpeg-devel libpng-devel freetype-devel libmcrypt-devel libmhash-devel libtool-ltdl-devel

然后需要自己编译安装 libiconv,如下。

wget http://ftp.gnu.org/pub/gnu/libiconv/libiconv-1.14.tar.gz

tar -xvf libiconv-1.14.tar.gz

cd libiconv-1.14

./configure

make

make install

然后编译安装 PHP ,记得打开 cgi 选项。PHP 源码包请到官网下载。

./configure --prefix=/usr/local/php52 --with-config-file-path=/usr/local/php52/etc --with-config-file-scan-dir=/usr/local/php52/etc/php.d --with-openssl --with-zlib --with-bz2 --with-gettext --with-mhash --with-mcrypt --with-iconv=/usr/local/libiconv --with-curl --with-gd --with-jpeg-dir --with-png-dir --with-freetype-dir --with-mysql=/usr/bin/mysql --with-pdo-mysql=/usr/bin/mysql --enable-gd-native-ttf --enable-bcmath --enable-mbstring --enable-zip --enable-soap --enable-sockets --enable-ftp --without-pear --enable-fastcgi --enable-force-cgi-redirect

make

make install

这样 PHP 5.2.17 就被安装到了 /usr/local/php52 里了。

/usr/loca/php52/bin/php -v

然后配置 fastcgi 。 找到 ~/public_html/cgi-bin/ 目录,创建 php52.fcgi 文件如下:

#!/bin/sh

export PHP_FCGI_CHILDREN=4

export PHP_FCGI_MAX_REQUESTS=200

export PHPRC="/home/oott123/conf/php.ini"

exec /usr/local/php52/bin/php-cgi

其中 PHPRC 为用户定义的 php.ini 文件。再创建 .htaccess 文件(此处需要 AllowOverride 为 All )如下:

SetHandler application/x-httpd-php-52

Action application/x-httpd-php-52 /cgi-bin/php52.fcgi

如果需要再加入 php 5.4 的支持,再添加如下代码:

SetHandler application/x-httpd-php

至此已经完成了 PHP 多版本的配置。

(责任编辑:最模板)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值