Una combinación de Linux, Apache, MySQL y PHP que se conoce como LAMP stack es el entorno de alojamiento web popular para la aplicación basada en PHP. Aquí Linux es un sistema operativo, Apache es el popular servidor web desarrollado por Apache Foundation, MySQL es un sistema de administración de bases de datos relacionales utilizado para almacenar datos y PHP es el lenguaje de programación ampliamente utilizado.
Este artículo lo ayudará a instalar Apache 2.4, MySQL 8.0 y PHP 7.4 en el sistema Ubuntu 20.04 LTS (Focal Fossa). Comencemos la instalación de LAMP stack en su máquina Ubuntu.
Requisitos
Debe tener acceso de usuario privilegiado root o sudo a su sistema Ubuntu 20.04. Inicie sesión en su sistema Ubuntu usando GUI para escritorio y SSH para la edición de servidor.
ssh [email protected]
Ahora actualice los paquetes actuales a la última versión.
sudo apt update && sudo apt upgrade
Siga las instrucciones de configuración inicial del servidor para preparar su sistema para que funcione.
Paso 1:Instalación de Apache2
Apache2 es un poderoso software de servidor web utilizado por una gran cantidad de sitios web. Este es el primer componente a instalar para configurar LAMP en el sistema Ubuntu 20.04.
Para instalar el paquete Apache2, escriba:
sudo apt update && sudo apt install apache2
Una vez completada la instalación del paquete Apache2, verifique el estado del servicio:
sudo systemctl status apache2
El servicio de Apache está activo y en ejecución. Ahora, abra un navegador web e ingrese la dirección IP de su servidor. Verá la página web predeterminada de Apache
Todos los archivos de configuración se almacenan en el directorio /etc/apache2. Para crear servidores virtuales adicionales, visite este tutorial.
Paso 2:Instalación de PHP
Los paquetes PHP 7.4 están disponibles en los repositorios Apt predeterminados en Ubuntu 20.04 LTS. Para instalar PHP en su sistema, actualice apt index y luego instálelo en su sistema.
sudo apt install -y php libapache2-mod-php
Instale también los módulos PHP adicionales necesarios para su aplicación.
sudo apt install php-curl php-gd php-json php-mbstring php-xml
Paso 3:Instalación del servidor MySQL
Los repositorios apt predeterminados de Ubuntu 20.04 contienen el servidor MySQL 8.0. Finalmente, instale los paquetes mysql-server para la base de datos MySQL. Además, instale el paquete php-mysql para usar el soporte de MySQL usando PHP. Use el siguiente comando para instalarlo.
sudo apt install mysql-server php-mysql
El instalador le pedirá la contraseña de root. Esta contraseña funcionará para su usuario root de MySQL. Después de instalar MySQL, ejecute el siguiente comando para la configuración inicial del servidor MySQL. Verá que la secuencia de comandos solicitará más configuraciones que las versiones anteriores de MySQL, como la política de validación de contraseña, etc.
sudo mysql_secure_installation
Securing the MySQL server deployment. Connecting to MySQL using a blank password. VALIDATE PASSWORD COMPONENT can be used to test passwords and improve security. It checks the strength of password and allows the users to set only those passwords which are secure enough. Would you like to setup VALIDATE PASSWORD component? Press y|Y for Yes, any other key for No: yThere are three levels of password validation policy: LOW Length >= 8 MEDIUM Length >= 8, numeric, mixed case, and special characters STRONG Length >= 8, numeric, mixed case, special characters and dictionary file Please enter 0 = LOW, 1 = MEDIUM and 2 = STRONG: 2Please set the password for root here. New password: Re-enter new password:Estimated strength of the password: 100 Do you wish to continue with the password provided?(Press y|Y for Yes, any other key for No) : y By default, a MySQL installation has an anonymous user, allowing anyone to log into MySQL without having to have a user account created for them. This is intended only for testing, and to make the installation go a bit smoother. You should remove them before moving into a production environment. Remove anonymous users? (Press y|Y for Yes, any other key for No) : ySuccess. Normally, root should only be allowed to connect from 'localhost'. This ensures that someone cannot guess at the root password from the network. Disallow root login remotely? (Press y|Y for Yes, any other key for No) : ySuccess. By default, MySQL comes with a database named 'test' that anyone can access. This is also intended only for testing, and should be removed before moving into a production environment. Remove test database and access to it? (Press y|Y for Yes, any other key for No) : y- Dropping test database... Success. - Removing privileges on test database... Success. Reloading the privilege tables will ensure that all changes made so far will take effect immediately. Reload privilege tables now? (Press y|Y for Yes, any other key for No) : ySuccess. All done!
Paso 4:Instalación de phpMyAdmin (opcional)
phpMyAdmin proporciona una interfaz web fácil de usar para administrar el servidor de base de datos MySQL. Puede instalar phpMyAdmin en Ubuntu 20.04 ejecutando el siguiente comando:
sudo apt install phpmyadmin
El proceso de instalación le pedirá que seleccione el servidor web para configurar. Seleccione "Apache" como servidor web para ejecutar phpMyAdmin.
A continuación, se le pedirá que cree una base de datos para phpMyAdmin y le pedirá los detalles de acceso del usuario administrativo. Complete todos los pasos para finalizar la instalación de phpMyAdmin.
Paso 5:Administrar servicios
Hemos terminado con la instalación de LAMP stack en el sistema Ubuntu 20.04 LTS. Los siguientes comandos lo ayudarán a iniciar/detener o reiniciar los servicios de Apache y MySQL que se ejecutan con systemd.
Para reiniciar los servicios de Apache y MySQL, escriba:
sudo systemctl restart apache2
sudo systemctl restart mysql
Para iniciar los servicios de Apache y MySQL, escriba:
sudo systemctl start apache2
sudo systemctl start mysql
Para detener los servicios de Apache y MySQL, escriba:
sudo systemctl stop apache2
sudo systemctl stop mysql
Paso 6:Ajuste de las reglas del cortafuegos
Puede proporcionar directamente un nombre de servicio como "http" o "https" para permitirlo. El firewalld usa el archivo /etc/services para determinar el puerto correspondiente del servicio.
sudo firewall-cmd --permanent --add-service=http
sudo firewall-cmd --permanent --add-service=https
sudo firewall-cmd --reload
Paso 7:configuración de la prueba
Después de completar toda la configuración. Vamos a crear un info.php archivar la raíz del documento del sitio web con el siguiente contenido.
sudo echo "<?php phpinfo(); ?>" > /var/www/html/info.php
Ahora acceda a este archivo en el navegador web. Verá una pantalla como la siguiente con todos los detalles de PHP en el servidor.
También acceda a phpMyAdmin