P2.11 Instalación y configuración de LAMP
En esta práctica, aprenderemos a instalar y configurar un stack LAMP (Linux, Apache, MySQL, PHP) en una máquina virtual Ubuntu. Al finalizar la práctica, deberíamos tener un servidor web funcional capaz de alojar aplicaciones web dinámicas.
Hasta ahora, hemos trabajado con servidores web estáticos utilizando Apache. Sin embargo, muchas aplicaciones web modernas requieren la capacidad de manejar contenido dinámico, lo que implica la interacción con bases de datos y la ejecución de scripts del lado del servidor. El stack LAMP es una solución popular para este propósito, ya que combina un sistema operativo robusto (Linux), un servidor web confiable (Apache), un sistema de gestión de bases de datos eficiente (MySQL) y un lenguaje de programación versátil (PHP).
Instalar PHP
Para instalar PHP en nuestra máquina virtual Ubuntu, podemos utilizar el siguiente comando en la terminal:
sudo apt update
sudo apt install php libapache2-mod-php
php: Es el paquete principal de PHP.
- libapache2-mod-php: Es el módulo que permite a Apache interpretar y ejecutar scripts PHP.
Después de la instalación, es recomendable reiniciar el servidor Apache para que los cambios surtan efecto:
sudo systemctl restart apache2
Verificar la instalación de PHP
Para verificar que PHP se ha instalado correctamente, podemos crear un archivo PHP de prueba en el directorio raíz de Apache. . Creamos un archivo llamado info.php con el siguiente contenido:
sudo nano /var/www/html/info.php
<?php
phpinfo();
?>
http://tu_direccion_ip/info.php. Si PHP está instalado correctamente, deberíamos ver una página con información detallada sobre la configuración de PHP en nuestro servidor.
Instalar MySQL
Para instalar MySQL en nuestra máquina virtual Ubuntu, utilizamos el siguiente comando:
sudo apt install mysql-server php-mysql
mysql-server: Es el paquete principal del servidor MySQL.
- php-mysql: Es el módulo que permite a PHP interactuar con bases de datos MySQL.
Debemos asegurarnos que MySQL se inicia automáticamente al arrancar el sistema:
sudo systemctl enable mysql
sudo systemctl start mysql
Configurar MySQL
Despues de instar MySQL, es recomendable crear un usuario y una base de datos para nuestras aplicaciones web. Podemos hacerlo accediendo a la consola de MySQL:
sudo mysql
CREATE DATABASE mibase_de_datos;
CREATE USER 'miusuario'@'localhost' IDENTIFIED BY 'micontraseña';
GRANT ALL PRIVILEGES ON mibase_de_datos.* TO 'miusuario'@'localhost';
FLUSH PRIVILEGES;
EXIT;
Probar la conexión a la base de datos desde PHP
Para probar la conexión a la base de datos desde PHP, podemos crear un archivo PHP llamado db_test.php con el siguiente contenido:
sudo nano /var/www/html/db_test.php
<?php
$servername = "localhost";
$username = "miusuario";
$password = "micontraseña";
$dbname = "mibase_de_datos";
// Crear conexión
$conn = new mysqli($servername, $username, $password, $dbname);
// Verificar conexión
if ($conn->connect_error) {
die("Conexión fallida: " . $conn->connect_error);
}
echo "Conexión exitosa a la base de datos";
$conn->close();
?>
http://tu_direccion_ip/db_test.php. Si la conexión es exitosa, deberíamos ver el mensaje "Conexión exitosa a la base de datos".