Actualizar PHP en Ubuntu
Primeros Pasos
Buenas practicas
Como bien estamos acostumbrados en Koda, vamos a empezar por actualizar todos los paquetes de nuestro servidor.
sudo su
apt-get update && apt-get upgrade
Instalar PHP
Vamos a intentar actualizar php del repositorio de ubuntu, si no está la versión que queremos, tendremos que añadir un repositorio externo de donde descargar la versión.
apt-get install php
Comprobar la versión de PHP
php -v
Instalar extensiones
apt-get install php-pear php-fpm php-dev php-zip php-curl php-xmlrpc php-gd php-mysql php-mbstring php-xml libapache2-mod-php
Añadir Repositorio
Primeras comprobaciones
Lo primero que vamos a hacer es comprobar que tenemos el siguiente paquete, que nos permitirá añadir repositorios
apt-get install software-properties-common
Añadir el repositorio
add-apt-repository ppa:ondrej/php
Actualizar el listado de paquetes
Al haber añadido el repositorio externo de PHP, al ejecutar el siguiente comando, encontrará la última versión de PHP que a continuación instalaremos.
apt-get update
Instalar/Actualizar PHP
Vamos a instalar PHP8 y los siguientes paquetes:
- libapache2-mod-php8.0
- libaprutil1-dbd-sqlite3
- php8.0-cli
- php8.0-common
- php8.0-json
- php8.0-opcache
- php8.0-readline
Y algúno más
apt-get install php8.0
Comprobar la versión de PHP
Si todo ha salido bien, tendríamos que tener la versión que hemos instalado.
php -v
Instalar extensiones para PHP8
Por último vamos a instalar varias extensiones de PHP necesarias por algunos servicios, como por ejemplo Apache, Mysql, PhpMyadmin...
apt-get install libapache2-mod-php8.0 php8.0-fpm libapache2-mod-fcgid php8.0-curl php8.0-dev php8.0-gd php8.0-mbstring php8.0-zip php8.0-mysql php8.0-xml
Cambiar la versión de PHP a Apache2
Quitar la versión anterior de PHP
Lo primero que vamos a hacer es desactivar la version actual de PHP.
sudo a2enmod php7.4
Poner la nueva versión de PHP
Vamos a indicar donde está la nueva versión de php.
sudo update-alternatives --set php /usr/bin/php8.0
Reiniciar el servicio de Apache2
Vamos a reiniciar el servicio de Apache2 para que se apliquen los cambios.
service apache2 restart