Este artículo describe cómo instalar una pila LAMP (Linux®, Apache®, MySQL®, PHP) en su servidor Red Hat® Enterprise Linux (RHEL) 7. Linux es su sistema operativo y Apache es su demonio web, que sirve información almacenada en su base de datos MySQL a través de secuencias de comandos PHP para sus usuarios. Al final de este artículo, tendrá un servidor LAMP completamente operativo, listo para servir múltiples hosts virtuales.
Requisitos
- Comprensión básica de Secure Shell (SSH)
- Sudo o acceso administrativo a su servidor
- Un servidor en la nube con CentOS® 7, Fedora 30+ o RHEL 7
Instalar los repositorios IUS
El repositorio Inline with Upstream Stable (IUS) proporciona versiones más recientes de algún software que se encuentra en los repositorios oficiales de CentOS y Red Hat. Los nombres de los paquetes en el repositorio IUS son diferentes de los nombres de los paquetes utilizados en los repositorios oficiales, lo que ayuda a evitar conflictos no intencionales o actualizaciones de versiones de software. Además, en las distribuciones de RHEL 7, la versión predeterminada de PHP es PHP 5.6, que ya no es compatible. Los repositorios de IUS contienen versiones de PHP hasta la 7.4, que es la última versión disponible para las distribuciones de RHEL 7.
Para obtener más información sobre el repositorio IUS, consulte Instalar repositorios EPEL e IUS en CentOS y Red Hat.
Para instalar el paquete de lanzamiento de IUS, ejecute el siguiente comando:
sudo yum install https://$(rpm -E '%{?centos:centos}%{!?centos:rhel}%{rhel}').iuscommunity.org/ius-release.rpm
Instalar la pila LAMP
Inicie sesión en su servidor usando SSH y luego complete los siguientes pasos para su método de configuración preferido.
Método de comando de una línea
-
Use el siguiente comando de una línea para una configuración conveniente de su pila LAMP en su servidor:
sudo sh -c "yum install httpd mariadb104 mariadb104-server mod_php74 -y; systemctl start mariadb && mysql_secure_installation && systemctl restart mariadb && systemctl start httpd && systemctl enable httpd && systemctl enable mariadb && firewall-cmd --permanent --zone=public --add-service=http && firewall-cmd --permanent --zone=public --add-service=https && firewall-cmd --reload"
-
Proporcione respuestas a las siguientes indicaciones del sistema:
- Ingrese la contraseña actual para root (ingrese para ninguno) :Dejar en blanco.
- Cambiar a autenticación unix_socket [S/n] :Seleccione No .
- ¿Establecer contraseña raíz? [S/n] :Seleccione Sí .
- Nueva contraseña :Tú decides, pero hazlo seguro.
- ¿Quitar usuarios anónimos? [S/n] :Seleccione Sí .
- ¿Deshabilitar el inicio de sesión raíz de forma remota? [S/n] :Seleccione Sí .
- ¿Quitar la base de datos de prueba y acceder a ella? [S/n] :Seleccione Sí .
- ¿Volver a cargar las tablas de privilegios ahora? [S/n] :Seleccione Sí .
Método de comandos individuales
Los siguientes pasos dividen el comando anterior de una línea en pasos individuales:
-
Instale los paquetes necesarios:
sudo yum install httpd mariadb104 mariadb104-server mod_php74 -y
-
Ejecute el siguiente comando para iniciar y asegurar el servidor MySQL:
sudo sh -c "systemctl start mariadb && mysql_secure_installation"
-
Proporcione respuestas a las siguientes indicaciones del sistema:
- Ingrese la contraseña actual para root (ingrese para ninguno) :Dejar en blanco.
- ¿Establecer contraseña raíz? [S/n] :Seleccione Sí .
- Cambiar a autenticación unix_socket [S/n] :Seleccione No .
- Nueva contraseña :Tú decides, pero hazlo seguro.
- ¿Quitar usuarios anónimos? [S/n] :Seleccione Sí .
- ¿Deshabilitar el inicio de sesión raíz de forma remota? [S/n] :Seleccione Sí .
- ¿Quitar la base de datos de prueba y acceder a ella? [S/n] :Seleccione Sí .
- ¿Volver a cargar las tablas de privilegios ahora? [S/n] :Seleccione Sí .
-
Ingrese el siguiente comando para reiniciar mysqld, inicie httpd y configure httpd y mysqld para iniciar en el arranque.
sudo sh -c "systemctl restart mariadb && systemctl start httpd && systemctl enable httpd && systemctl enable mariadb"
-
Permitir el tráfico web a través del cortafuegos:
sudo sh -c "firewall-cmd --permanent --zone=public --add-service=http && firewall-cmd --permanent --zone=public --add-service=https && firewall-cmd --reload"
Este comando permite el tráfico entrante del puerto 80 (web) y el puerto 443 (web seguro) a través del firewall y guarda la regla para reinicios.
La instalación se ha completado. Para probar que todo se instaló correctamente, abra su navegador y vaya a https://serverIpAddress/ .