我安装了Centos 7和Virtualmin,并使用了Tipycal php-fpm 5.4、7.0、7.1,您可以通过Virtualmin控制面板在每个虚拟主机上选择所需的版本,并且一切正常。
但是当我通过SSH访问服务器并检查php -v
时,我得到了:
PHP 5.4.16 (cli) (built: Oct 30 2018 19:30:51)
Copyright (c) 1997-2013 The PHP Group
Zend Engine v2.4.0, Copyright (c) 1998-2013 Zend Technologies
如何为Shell系统选择另一个php默认/基本版本?
答案 0 :(得分:2)
在外壳上发出php命令时,它将在服务器上使用默认的php版本,在您的情况下为 php-5.4.16
要使用其他php版本,您必须检查这些php版本的二进制文件所在的位置,并使用其完整路径调用它们,而不仅仅是键入php。
例如,在 CentOS 上,对于 PHP 7.2 , php二进制的完整路径为:/opt/rh/rh-php72/root/usr/bin/php
root@virtualmin /root
» /opt/rh/rh-php72/root/usr/bin/php -v
PHP 7.2.24 (cli) (built: Nov 4 2019 10:23:08) ( NTS )
Copyright (c) 1997-2018 The PHP Group
Zend Engine v3.2.0, Copyright (c) 1998-2018 Zend Technologies
with Zend OPcache v7.2.24, Copyright (c) 1999-2018, by Zend Technologies
答案 1 :(得分:2)
设置百胜仓库 首先,您需要在系统上启用Remi和EPEL yum存储库。使用以下命令在您的CentOS和Red Hat 7/6系统上安装EPEL存储库
使用此命令在系统上安装EPEL yum存储库
sudo yum install epel-release
,然后根据您的操作系统版本执行以下命令之一,以安装Remi存储库。
sudo rpm -Uvh http://rpms.famillecollet.com/enterprise/remi-release-7.rpm
在CentOS上安装PHP 7 您的系统已准备好从yum存储库安装PHP。根据需要,使用以下命令之一在系统上安装PHP 7.4或PHP 7.3或PHP 7.2或PHP 7.1。
yum --enablerepo=remi-php74 install php
yum --enablerepo=remi-php73 install php
yum --enablerepo=remi-php72 install php
yum --enablerepo=remi-php71 install php
我已经在系统上安装了最新版本的PHP 7.4。现在运行以下命令来检查系统上当前的活动PHP版本。
php -v
。
PHP 7.4.1 (cli) (built: Dec 17 2019 16:35:58) ( NTS )
Copyright (c) The PHP Group
Zend Engine v3.4.0, Copyright (c) Zend Technologies
安装PHP模块 您可能还需要根据应用程序需求安装其他PHP模块。下面的命令将安装一些更有用的PHP模块。
yum --enablerepo=remi-php74 install php-xml php-soap php-xmlrpc php-mbstring php-json php-gd php-mcrypt
yum --enablerepo=remi-php73 install php-xml php-soap php-xmlrpc php-mbstring php-json php-gd php-mcrypt
yum --enablerepo=remi-php72 install php-xml php-soap php-xmlrpc php-mbstring php-json php-gd php-mcrypt
yum --enablerepo=remi-php71 install php-xml php-soap php-xmlrpc php-mbstring php-json php-gd php-mcrypt
答案 2 :(得分:0)
启用默认PHP
要在Apache中从一个切换到另一个,例如:从PHP 5.6切换到7.2,请使用:
执行外壳
a2dismod php5.6
a2enmod php7.2
service apache2 restart
a2dismod php5.6
a2enmod php7.2
service apache2 restart