如何在shell上更改默认的PHP基础版本?

332nm8kg  于 2023-09-29  发布在  PHP
关注(0)|答案(4)|浏览(120)

我有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默认/基础版本?

bybem2ql

bybem2ql1#

当您在shell上发出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
hjqgdpho

hjqgdpho2#

安装centos 7中的PHP版本

设置Yum仓库首先,您需要在系统上启用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。

安装PHP7.4

yum --enablerepo=remi-php74 install php

安装PHP7.3

yum --enablerepo=remi-php73 install php

安装PHP 7.2

yum --enablerepo=remi-php72 install php

.检查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模块。

PHP 7.4版本

yum --enablerepo=remi-php74 install php-xml php-soap php-xmlrpc php-mbstring php-json php-gd php-mcrypt

PHP 7.3版本

yum --enablerepo=remi-php73 install php-xml php-soap php-xmlrpc php-mbstring php-json php-gd php-mcrypt

适用于PHP 7.2

yum --enablerepo=remi-php72 install php-xml php-soap php-xmlrpc php-mbstring php-json php-gd php-mcrypt
hujrc8aj

hujrc8aj3#

在centos上更改默认php版本是个问题。在.bashrc.bash_profile文件中放置pathalias将为特定用户设置php版本,而不是默认使用。
因此,在我的情况下,在这些步骤中提供的解决方案(使用CentOs和Plesk):

  1. which php
    /usr/bin/
    在该目录中,当您执行ls -la时,您会发现旧的php文件夹。
  2. mv php php-backup-创建备份
  3. ln -s /opt/plesk/php/8.2/bin/php php-创建一个新的符号链接到所需的php版本。
  4. php -v
    PHP 8.2.10 (cli) (built: Sep 4 2023 11:40:59) (NTS) Copyright (c) The PHP Group Zend Engine v4.2.10, Copyright (c) Zend Technologies with Zend OPcache v8.2.10, Copyright (c), by Zend Technologies
    这就是了。系统已经设置了默认的php。(未被配置文件覆盖时)
    顺便说一句,我需要设置默认的系统php,因为运行一个php命令从监督脚本。
owfi6suc

owfi6suc4#

更新

#!/bin/bash

# Set up Yum Repository

# Install EPEL repository
sudo yum install -y epel-release

# Enable Remi repository
sudo yum install -y https://rpms.remirepo.net/enterprise/remi-release-7.rpm

安装PHP 8.2

sudo yum --enablerepo=remi-php82 install -y php

检查PHP版本

php -v

安装PHP模块(根据需求调整)

sudo yum --enablerepo=remi-php82 install -y php-xml php-soap php-xmlrpc php-mbstring php-json php-gd php-mcrypt

相关问题