怎么配置两个php版本
时间 : 2023-03-29 00:11:02声明: : 文章内容来自网络,不保证准确性,请自行甄别信息有效性

配置两个不同版本的PHP可以帮助你在同一台服务器上运行不同的PHP应用程序。在本文中,我们将介绍如何在Linux上配置两个不同版本的PHP。

步骤 1:安装PHP

我们需要安装两个不同版本的PHP,以便进行比较。你可以从官方网站上下载PHP并手动安装,或者使用Linux发行版自带的包管理器进行安装。

在Ubuntu上安装PHP:

$ sudo apt update

$ sudo apt install php7.2 php5.6

在CentOS上安装PHP:

$ sudo yum install php72 php56

步骤 2:配置PHP版本

安装完PHP之后,我们需要为每个PHP版本创建一个配置文件。在Ubuntu上,配置文件位于 `/etc/apache2/mods-available/` 目录下,而在CentOS上,它们位于 `/etc/httpd/conf.d/` 目录下。在这个文件中,我们需要指定使用哪个版本的PHP。

在Ubuntu上:

$ sudo nano /etc/apache2/mods-available/php5.6.conf

<IfModule mod_php5.c>

SetHandler application/x-httpd-php5.6

</IfModule>

<IfModule mod_php7.c>

SetHandler application/x-httpd-php7.2

</IfModule>

在CentOS上:

$ sudo nano /etc/httpd/conf.d/php5.6.conf

<FilesMatch \.php$>

SetHandler "proxy:fcgi://localhost:9000"

</FilesMatch>

<FilesMatch \.php7$>

SetHandler "proxy:fcgi://localhost:9001"

</FilesMatch>

步骤 3:重启Web服务器

配置完成后,我们需要重启Web服务器以使更改生效。

在Ubuntu上:

$ sudo service apache2 restart

在CentOS上:

$ sudo systemctl restart httpd

步骤 4:测试PHP版本

现在我们可以测试我们的PHP版本是否配置正确。我们可以创建一个PHP文件来测试。在该文件中,我们可以使用 `phpinfo()` 函数查看PHP版本。

Ubuntu:

$ sudo nano /var/www/html/phpinfo.php

<?php phpinfo(); ?>

CentOS:

$ sudo nano /var/www/html/phpinfo.php

<?php phpinfo(); ?>

在浏览器中打开该文件,你应该看到PHP版本信息。如果你想测试不同的PHP版本,请将文件名更改为 `phpinfo56.php` 或 `phpinfo72.php` 等来测试。

总结

这就是在Linux上配置两个不同版本的PHP的步骤。现在你可以在同一台服务器上运行不同版本的PHP应用程序。

在一台服务器上安装多个不同版本的 PHP 是可能的,这是一种很普遍的情况,尤其是在迁移旧代码的时候较为常见。多个 PHP 版本的同时存在,可以便于开发人员为不同的应用程序选择最合适的版本。在本文中,我们将向您介绍如何在同一服务器上配置和运行两个不同版本的 PHP。

## 准备

在执行本文中的步骤之前,请确保您已经登录到您的 Linux 服务器,并正确地安装了 Apache web 服务器。确保您已具备 root 用户权限,以便可以更轻松地完成下列操作。

## 步骤一:安装 PHP

要在同一服务器上安装两个不同版本的 PHP,您需要首先安装第一个版本。您可以使用官方的包管理器来安装 PHP。在本例中,我们将安装 PHP 7.3。

使用以下命令来安装 PHP 7.3:

sudo apt update

sudo apt install php7.3

安装完成后,您可以检查是否正确安装 PHP 7.3,使用以下命令:

php -v

您应该看到以下输出:

PHP 7.3.29-1~deb10u1 (cli) (built: Sep 29 2021 17:14:40) ( NTS )

Copyright (c) 1997-2018 The PHP Group

Zend Engine v3.3.29, Copyright (c) 1998-2018 Zend Technologies

with Zend OPcache v7.3.29-1~deb10u1, Copyright (c) 1999-2018, by Zend Technologies

## 步骤二:安装第二个 PHP 版本

在安装第二个版本的 PHP 之前,您需要安装一个名为“software-properties-common”的软件包,以便使用 PPA (Personal Package Archive) 安装 PHP。

使用以下命令来安装“software-properties-common”软件包:

sudo apt-get update

sudo apt-get install software-properties-common

接下来,您需要添加 PPA 并安装 PHP 5.6。

使用以下命令来添加 PPA:

sudo add-apt-repository ppa:ondrej/php

sudo apt-get update

然后,使用以下命令来安装 PHP 5.6:

sudo apt-get install php5.6

安装完成后,您可以检查是否正确安装 PHP 5.6,使用以下命令:

php5.6 -v

您应该看到以下输出:

PHP 5.6.40-17+ubuntu20.04.1+deb.sury.org+1 (cli) (built: Sep 16 2021 08:48:38)

Copyright (c)

## 步骤三:配置 Apache 服务器

在同一服务器上运行两个不同版本的 PHP,需要对 Apache 服务器进行一些配置更改。

首先,您需要编辑 Apache 的配置文件。使用以下命令来打开 Apache 的配置文件:

sudo nano /etc/apache2/mods-enabled/dir.conf

默认情况下,Apache 服务器会优先考虑运行最后安装的 PHP 版本。因此,您需要将 PHP 7.3 的优先级降低,以便 Apache 服务器先考虑 PHP 5.6。

您可以根据以下代码更改 dir.conf 文件:

<IfModule mod_dir.c>

DirectoryIndex index.php index.html index.cgi index.pl index.xhtml index.htm

</IfModule>

<FilesMatch "\.php$">

SetHandler application/x-httpd-php5.6

</FilesMatch>

<FilesMatch "\.php7.3$">

SetHandler application/x-httpd-php7.3

</FilesMatch>

此配置将对.php 文件使用 PHP 5.6,对.php7.3 文件使用 PHP 7.3。

然后,重启 Apache 服务器以使更改生效:

sudo systemctl restart apache2

## 步骤四:测试 PHP 版本

现在您已经完成了设置,可以测试您现在正在使用的 PHP 版本。

使用以下命令创建一个名为 index.php 的文件:

sudo nano /var/www/html/index.php

将以下代码添加到文件中:

<?php

phpinfo();

?>

使用浏览器访问 http://[your_server_ip]/index.php,服务器将显示 PHP 5.6 版本的信息。现在,您可以更改.php 文件的扩展名并使用浏览器重新加载文件以查看 PHP 7.3 版本的信息。

## 结论

您已经在同一服务器上成功安装和运行了两个不同版本的 PHP。这使得开发人员更容易为不同应用程序选择最合适的 PHP 版本。