CentOS 7搭建两个PHP版本的方法详解

PHPz
PHPz 原创
2023-03-23 16:38:01 1023浏览

在开发中,有时会遇到需要使用不同的PHP版本的情况,如何在一个CentOS 7系统上搭建两个PHP版本呢?下面我们将详细介绍搭建方法。

一、准备

在开始搭建之前,先准备以下工具和环境:

1、CentOS 7服务器和root权限

2、两个不同版本的PHP,这里我们将使用PHP 5.6和PHP 7.2

3、Web服务器,这里我们将使用Apache服务器

4、EPEL和REMI仓库,这两个仓库提供了最新的PHP包和相关依赖包。如果没有安装,可以通过以下命令安装:

sudo yum install epel-release
sudo rpm -Uvh https://rpms.remirepo.net/enterprise/remi-release-7.rpm

5、安装必要的依赖,可以使用以下命令安装

sudo yum install httpd mysql php php-mysql php-devel php-gd php-pspell php-snmp php-xmlrpc php-xml

二、安装PHP 5.6

1、安装php56和相关扩展包

sudo yum install php56 php56-php php56-php-common php56-php-fpm php56-php-gd php56-php-json php56-php-mbstring php56-php-mcrypt php56-php-mysqlnd php56-php-opcache php56-php-pdo php56-php-pecl-apcu php56-php-pecl-imagick php56-php-pecl-memcached php56-php-pecl-redis php56-php-pecl-xdebug php56-php-soap php56-php-xml php56-php-zip

2、创建使用的php.ini文件

sudo cp /opt/remi/php56/root/etc/php.ini /etc/php56.ini
sudo cp /opt/remi/php56/root/etc/php-fpm.d/www.conf /etc/php56-fpm.d/www.conf

3、修改www.conf文件

sudo vi /etc/php56-fpm.d/www.conf

修改以下参数:

user = apache
group = apache
listen = 127.0.0.1:9000

4、 启动php56-fpm服务

sudo systemctl enable php56-php-fpm.service
sudo systemctl start php56-php-fpm.service

5、测试PHP 5.6是否正常工作

echo "<?php phpinfo(); ?>" > /var/www/html/php56info.php
curl http://localhost/php56info.php

如果返回PHP 5.6信息,则成功安装。

三、安装PHP 7.2

1、安装php72和相关扩展包

sudo yum install php72 php72-php php72-php-common php72-php-fpm php72-php-gd php72-php-json php72-php-mbstring php72-php-mcrypt php72-php-mysqlnd php72-php-opcache php72-php-pdo php72-php-pecl-apcu php72-php-pecl-imagick php72-php-pecl-memcached php72-php-pecl-redis php72-php-pecl-xdebug php72-php-soap php72-php-xml php72-php-zip

2、创建使用的php.ini文件

sudo cp /opt/remi/php72/root/etc/php.ini /etc/php72.ini
sudo cp /opt/remi/php72/root/etc/php-fpm.d/www.conf /etc/php72-fpm.d/www.conf

3、修改www.conf文件

sudo vi /etc/php72-fpm.d/www.conf

修改以下参数:

user = apache
group = apache
listen = 127.0.0.1:9001

4、 启动php72-fpm服务

sudo systemctl enable php72-php-fpm.service
sudo systemctl start php72-php-fpm.service

5、测试PHP 7.2是否正常工作

echo "<?php phpinfo(); ?>" > /var/www/html/php72info.php
curl http://localhost/php72info.php

如果返回PHP 7.2信息,则成功安装。

四、配置Apache服务器

1、修改httpd.conf文件

sudo vi /etc/httpd/conf/httpd.conf

增加以下内容:

AddHandler php56 .php
Action php56 /usr/bin/php56-cgi
AddHandler php72 .php
Action php72 /usr/bin/php72-cgi

2、修改虚拟主机配置文件

sudo vi /etc/httpd/conf.d/virtualhost.conf

增加以下内容:

<VirtualHost *:80>
  ServerName www.mysite.com
  DocumentRoot /var/www/html/mysite
  <Directory /var/www/html/mysite>
    Options Indexes FollowSymLinks MultiViews
    AllowOverride All
    Order allow,deny
    allow from all
    Require all granted
  </Directory>
  <FilesMatch "\.php$">
    SetHandler php72
  </FilesMatch>
</VirtualHost>

3、重启Apache服务器

sudo systemctl restart httpd.service

现在,您就可以同时运行两个PHP版本了。

总结

在这篇文章中,我们介绍了如何在CentOS 7上搭建两个PHP版本。有了这些知识,您就可以更灵活地开发和管理您的PHP应用程序了。

以上就是CentOS 7搭建两个PHP版本的方法详解的详细内容,更多请关注php中文网其它相关文章!

声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。