Cómo instalar Linux, Apache, MySQL, PHP (LAMP) en Ubuntu 20.04 [Inicio rápido]

Introducción
En esta guía de inicio rápido, instalaremos una pila LAMP en un servidor Ubuntu 20.04.
Para obtener una versión más detallada de este tutorial, con más explicaciones de cada paso, consulte Cómo instalar Linux, Apache, MySQL, PHP (LAMP) Stack en Ubuntu 20.04
Prerrequisitos
Para seguir esta guía, necesitará acceso a un servidor Ubuntu 20.04 como sudo
usuario.
Paso 1: Instalar Apache
Actualice el caché de su administrador de paquetes y luego instale Apache con:
- sudo apt update
- sudo apt install apache2
Una vez finalizada la instalación, deberá ajustar la configuración de su firewall para permitir el tráfico HTTP en su servidor. Ejecute el siguiente comando para permitir el acceso externo en el puerto 80
(HTTP):
- sudo ufw allow in "Apache"
Con la nueva regla de firewall agregada, puede probar si el servidor está en funcionamiento accediendo a la dirección IP pública o al nombre de dominio de su servidor desde su navegador web. Verá una página como esta:
Paso 2: Instalar MySQL
Ahora instalaremos MySQL, un popular sistema de gestión de bases de datos utilizado en entornos PHP.
Nuevamente, utilice apt
para adquirir e instalar este software:
- sudo apt install mysql-server
Cuando finalice la instalación, se recomienda ejecutar un script de seguridad que viene preinstalado con MySQL. Inicie el script interactivo ejecutando lo siguiente:
- sudo mysql_secure_installation
Se le preguntará si desea configurar la VALIDATE PASSWORD PLUGIN
contraseña. Responda Y
"sí" o cualquier otra cosa para continuar sin habilitarla. Si responde "sí", se le solicitará que seleccione un nivel de validación de contraseña.
A continuación, el servidor le solicitará que seleccione y confirme una contraseña para el usuario root de MySQL. Aunque el método de autenticación predeterminado para el usuario root de MySQL prescinde del uso de una contraseña, incluso cuando se establece una , debe definir una contraseña segura aquí como medida de seguridad adicional.
Para el resto de las preguntas, presione Y
y marque la ENTER
tecla en cada indicación.
Nota: al momento de escribir este artículo, la biblioteca PHP nativa de MySQL mysqlnd
no admite caching_sha2_authentication
, el método de autenticación predeterminado para MySQL 8. Por ese motivo, al crear usuarios de bases de datos para aplicaciones PHP en MySQL 8, deberá asegurarse de que estén configurados para usar mysql_native_password
en su lugar. Consulte el paso 6 de nuestra guía detallada de LAMP en Ubuntu 20.04 para aprender a hacerlo.
Paso 3 — Instalar PHP
Para instalar PHP y sus dependencias, ejecute:
- sudo apt install php libapache2-mod-php php-mysql
Una vez finalizada la instalación, puedes ejecutar el siguiente comando para confirmar tu versión de PHP:
- php -v
OutputPHP 7.4.3 (cli) (built: Mar 26 2020 20:24:23) ( NTS )Copyright (c) The PHP GroupZend Engine v3.4.0, Copyright (c) Zend Technologies with Zend OPcache v7.4.3, Copyright (c), by Zend Technologies
Paso 4: Crea un host virtual para tu sitio web
En esta guía, configuraremos un dominio llamado your_domain , pero deberás reemplazarlo con tu propio nombre de dominio .
Apache en Ubuntu 20.04 tiene un bloque de servidor habilitado de manera predeterminada que está configurado para servir documentos desde el /var/www/html
directorio. En lugar de modificar /var/www/html
, crearemos una estructura de directorio dentro /var/www
del sitio your_domain , dejando /var/www/html
en su lugar el directorio predeterminado que se servirá si una solicitud de cliente no coincide con ningún otro sitio.
Cree el directorio para su_dominio de la siguiente manera:
- sudo mkdir /var/www/your_domain
A continuación, asigne la propiedad del directorio con la $USER
variable de entorno, que hará referencia a su usuario actual del sistema:
- sudo chown -R $USER:$USER /var/www/your_domain
Luego, abra un nuevo archivo de configuración en sites-available
el directorio de Apache usando su editor de línea de comandos preferido:
- sudo nano /etc/apache2/sites-available/your_domain.conf
Esto creará un nuevo archivo en blanco. Pegue la siguiente configuración básica:
/etc/apache2/sitios-disponibles/su_dominio.conf
VirtualHost *:80 ServerName your_domain ServerAlias www.your_domain ServerAdmin webmaster@localhost DocumentRoot /var/www/your_domain ErrorLog ${APACHE_LOG_DIR}/error.log CustomLog ${APACHE_LOG_DIR}/access.log combined/VirtualHost
Guarda y cierra el archivo cuando hayas terminado. Si estás usando nano
, puedes hacerlo presionando CTRL+X
, luego Y
y ENTER
.
Ahora puedes usar a2ensite
para habilitar el nuevo host virtual:
- sudo a2ensite your_domain
Para deshabilitar el sitio web predeterminado de Apache, escriba:
- sudo a2dissite 000-default
Para asegurarse de que su archivo de configuración no contenga errores de sintaxis, ejecute:
- sudo apache2ctl configtest
Por último, vuelva a cargar Apache para que estos cambios surtan efecto:
- sudo systemctl reload apache2
Tu nuevo sitio web ya está activo, pero la raíz web aún está vacía. Crea un archivo en esa ubicación para que podamos probar que el host virtual funciona como se espera:/var/www/your_domain
index.html
- nano /var/www/your_domain/index.html
Incluya el siguiente contenido en este archivo:
/var/www/tu_dominio/index.html
html head titleyour_domain website/title /head body h1Hello World!/h1 pThis is the landing page of strongyour_domain/strong./p /body/html
Ahora vaya a su navegador y acceda nuevamente al nombre de dominio o dirección IP de su servidor:
http://server_domain_or_IP
Verás una página como ésta:
Paso 5: Probar PHP con Apache
Ahora crearemos un script de prueba PHP para confirmar que Apache puede manejar y procesar solicitudes de archivos PHP.
Cree un nuevo archivo con el nombre info.php
dentro de su carpeta raíz web personalizada:
- nano /var/www/your_domain/info.php
Se abrirá un archivo en blanco. Agregue el siguiente contenido dentro del archivo:
/var/www/su_dominio/info.php
?phpphpinfo();
Cuando haya terminado, guarde y cierre el archivo.
Vaya a su navegador web y acceda al nombre de dominio o dirección IP de su servidor, seguido del nombre del script, que en este caso es info.php
:
http://server_domain_or_IP/info.php
Verás una página similar a ésta:
Después de comprobar la información relevante sobre su servidor PHP a través de esa página, es mejor eliminar el archivo que ha creado, ya que contiene información confidencial sobre su entorno PHP y su servidor Ubuntu. Puede utilizar rm
para ello:
- sudo rm /var/www/your_domain/info.php
Tutoriales relacionados
Aquí hay enlaces a guías más detalladas relacionadas con este tutorial:
- Configuración inicial del servidor en Ubuntu 20.04
- Gestión de registros DNS en DigitalOcean
- Cómo instalar Linux, Apache, MySQL, PHP (LAMP) en Ubuntu 20.04
- Cómo proteger Apache con Let's Encrypt en Ubuntu 20.04
Deja una respuesta