ubuntu php 版本,Ubuntu软件中心
大家好,如果您还对ubuntu php 版本不太了解,没有关系,今天就由本站为大家分享ubuntu php 版本的知识,包括Ubuntu软件中心的问题都会给大家分析到,还望可以解决大家的问题,下面我们就开始吧!
Ubuntu使用apt-get安装PHP指定版本
在Ubuntu系统中使用apt-get安装PHP特定版本的过程如下:
首先,通过命令行添加源,使用以下命令添加`zanfur/php5.5`源:
bash
add-apt-repository ppa:zanfur/php5.5
完成源添加后,更新系统软件包列表:
bash
apt-get update
接着,安装所需的PHP版本和相关组件,包括GD库、MySQL连接、MySQL服务、Nginx服务器、PHP命令行接口等:
bash
apt-get install php5-gd php5-mysql mysql-server nginx php5-cli
以上步骤指导用户通过Ubuntu系统自带的apt-get工具,安装指定版本的PHP及其依赖组件。在执行命令时,请确保拥有管理员权限,且系统已安装最新更新。
如何在Ubuntu上在多个PHP版本之间切换
在您的系统上,如果您已安装了多个版本的PHP(例如PHP 7.1和PHP 5.6两者)。 PHP 7.1作为Apache和CLI的默认PHP运行。对于任何需求,您需要使用PHP 5.6。然后你不需要删除php 7.1。你可以简单地切换php版本为默认用于Apache和命令行。
例如,您的服务器安装了PHP 7.1和PHP 5.6两个版本。现在下面的例子将帮助你在两个版本之间切换。
从PHP 5.6=> PHP 7.1
默认PHP 5.6在您的系统上设置,您需要切换到PHP 7.1。
Apache:–
$sudoa2dismodphp5.6
$sudoa2enmodphp7.1
$sudoserviceapache2restart
命令行:-
$update-alternatives--setphp/usr/bin/php7.1
从PHP7.1=>PHP5.6
默认PHP7.1在您的系统上设置,您需要切换到PHP5.6。
Apache:–
$sudoa2dismodphp7.1
$sudoa2enmodphp5.6
$sudoserviceapache2restart
命令行:-
$sudoupdate-alternatives--setphp/usr/bin/php5.6
ubuntu多版本php切换
学习swoole时需升级PHP版本,以适配所需依赖。直接从PHP 7.0升级至PHP 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版本方法如下:
禁用7.0版本:sudo a2dismod php7.0启用7.2版本:sudo a2enmod php7.2重启nginx(或apache):sudo service nginx restart
若出现"ERROR: Module php7.0 does not exist!",执行sudo apt-get install libapache2-mod-php7.0后再执行上述操作。
检查浏览器中的phpinfo()应显示7.2版本,而命令行CLI仍显示7.0版本。切换命令行CLI版本的方法为:
切换CLI:sudo update-alternatives--set php/usr/bin/php7.2
现在在命令行执行php-v能显示7.2版本信息。
如果需要在有多个PHP版本的机器上进行切换,可以使用sudo service php7.0-fpm stop/restart来切换。此方法仅适用于切换web端的PHP-fpm,命令行CLI端的版本无法切换。
升级版本后,可能存在PHP 7.1版本的干扰。当第二天启动电脑后发现所有Laravel项目报错时,发现PHP-v显示的是7.2版本,但实际运行中仍遇到问题。排查后得知是端口被占用导致的PHP fastCGI程序启动失败。
解决方法是使用ps aux|grep php命令查看所有PHP-fpm进程,找到并杀死PHP 7.1-fpm进程。这种方法优于killall php-fpm命令,后者无法解决问题。