GNU/Linux >> Tutoriales Linux >  >> Ubuntu

Cómo cambiar entre varias versiones de PHP en Ubuntu

Este breve tutorial lo guía a través de los pasos para cambiar entre varias versiones de PHP en Ubuntu Linux y sus derivados. Esta guía se prueba oficialmente en la edición del servidor Ubuntu 18.04 LTS. También puede funcionar en otras versiones antiguas o nuevas de Ubuntu.

Introducción

A veces, es posible que la versión más reciente de un paquete instalado no funcione como esperaba. Es posible que su aplicación no sea compatible con el paquete actualizado y solo admita una versión anterior específica del paquete.

En tales casos, simplemente puede degradar el paquete problemático a su versión de trabajo anterior en poco tiempo. Consulte nuestras guías antiguas sobre cómo degradar un paquete en Ubuntu y sus variantes aquí y cómo degradar un paquete en Arch Linux y sus derivados aquí .

En algunas situaciones, no necesita degradar los paquetes problemáticos. En Linux, podemos usar varias versiones del mismo paquete al mismo tiempo, una al lado de la otra.

Por ejemplo, supongamos que está probando una aplicación PHP en pila LAMP implementado en Ubuntu 18.04 LTS. Después de un tiempo, descubre que la aplicación funcionó bien en PHP 5.6, pero no en PHP 7.2 (Ubuntu 18.04 LTS instala PHP 7.x de manera predeterminada).

¿Vas a reinstalar PHP o toda la pila LAMP nuevamente? No es necesario.

Ni siquiera tiene que degradar el PHP a su versión anterior. Simplemente puede cambiar a la versión anterior de PHP en funcionamiento en un par de minutos.

1. Cambiar entre varias versiones de PHP

Verifiquemos la versión instalada predeterminada de PHP usando el comando:

$ php -v

Salida de muestra:

PHP 7.2.7-0ubuntu0.18.04.2 (cli) (built: Jul 4 2018 16:55:24) ( NTS )
Copyright (c) 1997-2018 The PHP Group
Zend Engine v3.2.0, Copyright (c) 1998-2018 Zend Technologies
with Zend OPcache v7.2.7-0ubuntu0.18.04.2, Copyright (c) 1999-2018, by Zend Technologies

Como puede ver, la versión instalada de PHP es 7.2.7.

Después de probar su aplicación durante un par de días, descubre que su aplicación no es compatible con PHP 7.2. En ese caso, es una buena idea tener tanto la versión PHP 5.x como la versión PHP 7.x, para que pueda cambiar fácilmente entre cualquier versión compatible en cualquier momento.

No necesita eliminar PHP 7.x o reinstalar la pila LAMP. Puede usar ambas versiones de PHP 5.x y 7.x juntas.

Supongo que aún no desinstaló php 5.6 en su sistema. Por si acaso, ya lo eliminó, puede instalarlo nuevamente usando un PPA como se muestra a continuación.

Puede instalar PHP 5.6 desde un PPA:

$ sudo add-apt-repository -y ppa:ondrej/php
$ sudo apt update
$ sudo apt install php5.6

1.1. Cambiar de PHP 7.x a PHP 5.x

1.1.1 Primero deshabilite el módulo PHP 7.2 usando el comando:

$ sudo a2dismod php7.2

Salida de muestra:

Module php7.2 disabled.
To activate the new configuration, you need to run:
systemctl restart apache2

1.1.2. A continuación, habilite el módulo PHP 5.6:

$ sudo a2enmod php5.6

1.1.3 Establezca PHP 5.6 como versión predeterminada usando el comando:

$ sudo update-alternatives --set php /usr/bin/php5.6

1.1.4. Alternativamente, puede ejecutar el siguiente comando para establecer qué versión de PHP para todo el sistema desea usar de manera predeterminada.

$ sudo update-alternatives --config php

1.1.5. Ingrese el número de selección para configurarlo como versión predeterminada o simplemente presione ENTER para mantener la opción actual.

1.1.6. Si ha instalado otras extensiones de PHP, configúrelas también como predeterminadas.

$ sudo update-alternatives --set phar /usr/bin/phar5.6

1.1.7. Finalmente, reinicie su servidor web Apache:

$ sudo systemctl restart apache2

Ahora, compruebe si PHP 5.6 es la versión predeterminada o no:

$ php -v

Salida de muestra:

PHP 5.6.37-1+ubuntu18.04.1+deb.sury.org+1 (cli) 
Copyright (c) 1997-2016 The PHP Group
Zend Engine v2.6.0, Copyright (c) 1998-2016 Zend Technologies
with Zend OPcache v7.0.6-dev, Copyright (c) 1999-2016, by Zend Technologies

2. Cambiar de PHP 5.x a PHP 7.x

Del mismo modo, puede cambiar de la versión PHP 5.x a PHP 7.x ejecutando los siguientes comandos uno tras otro.

$ sudo a2enmod php7.2
$ sudo a2dismod php5.6
$ sudo update-alternatives --set php /usr/bin/php7.2
$ sudo systemctl restart apache2

Una advertencia:

La última versión estable de PHP 5.6 ha llegado al fin del soporte activo a partir del 19 de enero de 2017. Sin embargo, PHP 5.6 continuará recibiendo soporte para problemas críticos de seguridad hasta el 31 de diciembre de 2018. Por lo tanto, se recomienda actualizar todas sus aplicaciones PHP para que sean compatibles con PHP 7 .x lo antes posible.

Si desea evitar que PHP se actualice automáticamente en el futuro, consulte la siguiente guía.

  • Cómo evitar que un paquete se instale, actualice o elimine automáticamente en Ubuntu

Y, eso es todo por ahora. Espero que esto ayude.


Ubuntu
  1. Cómo cambiar entre varias versiones del compilador GCC y G++ en Ubuntu 20.04 LTS Focal Fossa

  2. Cómo instalar PHP 8.0 en Ubuntu 20.04 / Ubuntu 18.04

  3. Cómo instalar varias versiones de PHP en Ubuntu 18.04 LTS

  4. Cómo instalar PHP 7.2 en Ubuntu 16.04

  5. Cómo instalar/cambiar entre varias versiones de Java con SDKMAN

Cómo cambiar entre Xorg y Wayland en Ubuntu

Cómo cambiar entre varias versiones de Java en Debian

Cómo instalar PHP 8.0 en Ubuntu 20.04/18.04

Cómo instalar diferentes versiones de PHP (5.6, 7.x y 8.0) en Ubuntu

Cómo instalar PHP en Ubuntu 22.04

Cómo instalar PHP en Ubuntu 22.04