Ⅰ ubuntu多版本php切换
本文主要讲解了在Ubuntu系统中如何进行PHP版本的切换,以及升级到更高版本的PHP的具体步骤。以PHP从7.0升级到7.2为例,首先需要在Ubuntu系统中添加特定的PPA源,然后执行apt-get命令进行更新和升级。
在完成PHP版本的升级后,可以进一步安装Swoole扩展,通常推荐使用pecl install命令进行安装,可以避免手动编译过程中可能遇到的版本对应不上的问题。
在完成PHP版本升级和扩展安装后,为了在系统中切换不同的PHP版本,可以采取多种方法。针对Apache服务,可以通过修改配置文件中的`LoadMole`和`AddHandler`部分,实现对不同PHP版本的启用和禁用。具体操作包括禁用旧版本(如PHP 7.0)并启用新版本(如PHP 7.2),然后重启服务(如使用`sudo service nginx restart`或`sudo service apache2 restart`)来完成切换。
在切换PHP版本时,可能会遇到一些问题,例如在浏览器中查看PHP信息时只能显示新版本,而命令行环境下的PHP版本仍显示为旧版本。这时可以使用`update-alternatives`命令来指定命令行环境中的PHP版本。此外,如果在系统中同时存在多个PHP版本,且在升级后某些应用项目出现错误,可能是因为端口被占用导致PHP FastCGI程序启动失败。解决这个问题的方法是通过`ps aux|grep php`命令查找并终止相关PHP-fpm进程,进而重启应用。
综上所述,Ubuntu系统中进行PHP版本切换与升级需要通过一系列操作,包括添加PPA源、更新与安装扩展、修改配置文件、切换与启用不同版本的PHP,以及处理可能遇到的兼容性和配置问题。通过遵循上述步骤,可以顺利地在Ubuntu系统中实现PHP版本的灵活切换与升级。
Ⅱ ubuntu多版本php切换
针对如何在 Ubuntu 系统中切换不同版本的 PHP,以下是具体的步骤和操作指南。
首先,要从 PHP 7.0 升级至 7.2,可以执行以下命令:
sudo add-apt-repository ppa:ondrej/php
sudo apt-get update
sudo apt-get upgrade php
# 扩展升级
sudo apt-get install php7.2-mbstring
sudo apt-get install php7.2-gd
sudo apt-get install php7.2-dom
sudo apt-get install php7.2-mysql
sudo apt-get install php7.2-curl
若需安装 swoole,推荐直接使用 pecl install swoole 进行安装,以避免手动编译过程中可能出现的版本对应问题。
为了在服务器中切换 PHP 版本,可以进行如下操作:
sudo a2dismod php7.0
sudo a2enmod php7.2
sudo service nginx restart
若在切换过程中遇到 ERROR: Mole php7.0 does not exist! 的问题,可以尝试安装 libapache2-mod-php7.0 后再执行上述步骤。
在浏览器中查看 phpinfo() 应该能看到版本为 7.2。在命令行中,可以通过执行以下命令切换 PHP 版本:
sudo update-alternatives --set php /usr/bin/php7.2
执行 php -v 命令后,可以看到命令行 CLI 环境下已切换为 PHP 7.2 版本。
在服务器上运行多个 PHP 版本时,若出现报错,检查发现是端口被占用导致的 php fastCGI 启动失败。可以使用以下方法解决问题:
ps aux|grep php 查找所有 php-fpm 进程,记录进程 id,然后使用 kill 命令终止相应进程。
有解决方案建议使用 killall php-fpm 命令,但此命令实际并未解决问题。正确的做法是,通过 ps aux|grep php 查找并杀死具体进程,以此解决端口冲突问题。