Instalar entorno Apache, PHP 8, MySQL, PHPMyAdmin… en Ubuntu 20.04
Vamos a ver los pasos a seguir para instalar un entorno de desarrollo web en nuestro equipo, o un servidor web en Ubuntu 20.04.
Como en cualquier instalación, empezaremos por actualizar la base de datos:
sudo apt update
Y actualizaremos los paquetes instalados:
sudo apt upgrade
Instalar Apache 2
Ahora ya podemos instalar el servidor web Apache con:
sudo apt install apache2
Una vez instalado, podemos comprobar con un navegador que se ha instalado correctamente accediendo a localhost:
lynx localhost
Que nos debería mostrar algo así:
O, con un navegador gráfico, que debería devolver algo como esto:
Si vemos la página de inicio de Apache, es que se ha instalado el servidor web correctamente. Ya podemos continuar con el resto de paquetes.
Instalar PHP 8
Para instalar PHP 8, deberemos añadir su ppa, ya que es una versión más moderna que Ubuntu 20.04. Primero añadimos las dependencias:
sudo apt install ca-certificates apt-transport-https software-properties-common
Y después, añadir la ppa:
sudo add-apt-repository ppa:ondrej/php
Puede que nos avise de un posible fallo:
WARNING: add-apt-repository is broken with non-UTF-8 locales, see https://github.com/oerdnj/deb.sury.org/issues/56 for workaround: # LC_ALL=C.UTF-8 add-apt-repository ppa:ondrej/php Más información: https://launchpad.net/~ondrej/+archive/ubuntu/php Pulse [ENTRAR] para continuar o Ctrl+C para cancelar la adición.
Si pulsamos ENTER, continuará la instalación sin problemas. Actualizamos la lista de paquetes:
sudo apt update
Y ya podemos instalar PHP. Podemos hacerlo de dos maneras:
- Como módulo de Apache
- Apache con PHP-FPM
Si estamos configurando nuestro equipo como entorno de desarrollo, nos bastaría con instalar PHP como módulo de Apache. PHP-FPM es un manejador de procesos para páginas con gran tráfico por lo que es útil para servidores, pero no le vamos a sacar partido en un equipo local.
PHP como módulo de Apache
Para usar PHP 8 como módulo de Apache, instalaremos los siguientes paquetes:
sudo apt install php8.0 libapache2-mod-php8.0
Y comprobamos que se ha instalado correctamente con:
php -v
Que nos debería devolver algo parecido a esto (las versiones pueden cambiar):
PHP 8.0.18 (cli) (built: Apr 21 2022 10:14:55) ( NTS ) Copyright (c) The PHP Group Zend Engine v4.0.18, Copyright (c) Zend Technologies with Zend OPcache v8.0.18, Copyright (c), by Zend Technologies
Apache con PHP-FPM
Deberemos instalar los siguientes paquetes:
sudo apt install php8.0-fpm libapache2-mod-fcgid
Y habilitarlos:
sudo a2enmod proxy_fcgi setenvif sudo a2enconf php8.0-fpm
Reiniciar Apache y comprobar que se ha instalado correctamente
Cuando estén instalados, reiniciamos Apache:
sudo systemctl restart apache2
Podemos comprobar que se ha instalado bien como módulo de PHP haciendo un script en /var/www/html/ donde podemos crear un directorio para probar al que le daremos permisos para escribir:
cd /var/www/html/ sudo mkdir prueba sudo chown nuestro_usuario prueba/ cd prueba
Y ahí creamos un script que muestre la información de PHP:
<?php phpinfo(); ?>
Si al acceder con el navegador, nos devuelve algo así:
Es que se ha instalado correctamente.
Si queremos trabajar con MySQL y PHP, instalaremos la extensión php-mysql:
sudo apt install php8.0-mysql
Instalación de MySQL
Instalaremos el paquete de MySQL Server con:
sudo apt install mysql-server
Y comprobaremos su correcto funcionamiento con:
sudo mysql
Si entramos en la consola de MySQL sin problemas, y vemos algo así:
Ya tenemos instalado el servidor de MySQL. Para salir, escribiremos:
exit
Y ya podemos programar y probar nuestras páginas web en PHP usando la base de datos MySQL.