在虚拟专用服务器(VPS)上安装两个PHP版本,可以让我们根据不同的项目需求灵活选择合适的PHP环境,下面,我将详细为大家介绍如何在VPS上安装两个PHP版本。
我们需要登录到VPS,可以使用PuTTY、Xshell等SSH客户端软件进行连接,登录成功后,接下来就开始进行操作。
第一步,更新系统软件包,在终端中输入以下命令:
sudo apt-get update sudo apt-get upgrade
第二步,安装编译PHP所需的依赖包,在终端中输入以下命令:
sudo apt-get install -y make autoconf automake libtool curl git-core libxml2-dev libsqlite3-dev libcurl4-openssl-dev pkg-config libpng-dev libjpeg-dev libfreetype6-dev
第三步,下载PHP源码包,这里以PHP 7.2和PHP 7.4为例,分别下载两个版本的源码包,在终端中输入以下命令:
wget https://www.php.net/distributions/php-7.2.34.tar.gz wget https://www.php.net/distributions/php-7.4.26.tar.gz
第四步,解压源码包,在终端中输入以下命令:
tar -zxvf php-7.2.34.tar.gz tar -zxvf php-7.4.26.tar.gz
第五步,编译安装PHP 7.2,进入解压后的PHP 7.2源码目录,然后执行以下命令:
cd php-7.2.34 ./configure --prefix=/usr/local/php72 --enable-fpm --with-fpm-user=www-data --with-fpm-group=www-data make && sudo make install
第六步,编译安装PHP 7.4,同理,进入解压后的PHP 7.4源码目录,然后执行以下命令:
cd php-7.4.26 ./configure --prefix=/usr/local/php74 --enable-fpm --with-fpm-user=www-data --with-fpm-group=www-data make && sudo make install
第七步,配置环境变量,编辑~/.bashrc文件,在文件末尾添加以下内容:
export PATH=/usr/local/php72/bin:/usr/local/php74/bin:$PATH
保存退出后,执行以下命令使环境变量生效:
source ~/.bashrc
第八步,配置PHP-FPM,分别进入两个版本的PHP安装目录,复制php-fpm配置文件到/etc目录:
sudo cp /usr/local/php72/etc/php-fpm.conf.default /etc/php72-fpm.conf sudo cp /usr/local/php74/etc/php-fpm.conf.default /etc/php74-fpm.conf
编辑/etc/php72-fpm.conf和/etc/php74-fpm.conf文件,修改以下内容:
;pid = run/php-fpm.pid pid = /var/run/php72-fpm.pid ;error_log = log/php-fpm.log error_log = /var/log/php72-fpm.log ;listen = 127.0.0.1:9000 listen = /var/run/php72-fpm.sock ;listen.owner = www-data ;listen.group = www-data ;listen.mode = 0660
同理,修改PHP 7.4的配置文件,注意修改为不同的端口或socket文件。
第九步,启动PHP-FPM,分别创建systemd服务文件,如下:
sudo vim /etc/systemd/system/php72-fpm.service sudo vim /etc/systemd/system/php74-fpm.service
分别添加以下内容:
[Unit] Description=PHP 7.2 FPM (FastCGI Process Manager) After=network.target [Service] Type=simple PIDFile=/var/run/php72-fpm.pid ExecStart=/usr/local/php72/sbin/php-fpm --nodaemonize --fpm-config /etc/php72-fpm.conf ExecReload=/bin/kill -USR2 $MAINPID [Install] WantedBy=multi-user.target
保存退出后,启动并设置开机自启:
sudo systemctl start php72-fpm sudo systemctl enable php72-fpm sudo systemctl start php74-fpm sudo systemctl enable php74-fpm
至此,VPS上已成功安装两个PHP版本,您可以根据项目需求配置Nginx或其他Web服务器,以使用不同的PHP版本。