Cómo instalar Apache con hosts virtuales en Debian 10
Apache, conocido popularmente como servidor HTTP Apache, es un servidor web multiplataforma gratuito y de código abierto mantenido por la Fundación Apache. Es el servidor web líder con una cuota de mercado del 35 % en Internet y Nginx ocupa el segundo lugar con un 24 %.
Apache es altamente confiable, flexible, fácil de instalar e incluye numerosas características que lo hacen popular entre los desarrolladores y entusiastas de Linux. Además, la Fundación Apache lo mantiene y actualiza periódicamente, lo que ayuda a corregir errores de software y mejorar su eficiencia general. Al momento de escribir este artículo, la última versión de Apache es la 2.4.39.
Lea también: Instale Nginx con bloques de servidor (hosts virtuales) en Debian 10
En esta guía, lo guiaremos a través de los pasos sobre cómo instalar el servidor web Apache en Debian 10.
Requisitos previos
Antes de comenzar, asegúrese de que se cumplan los siguientes requisitos:
- Una instancia de Debian 10.
- Un Nombre de dominio completo (FQDN) que apunta al servidor.
- En esta guía, utilizamos el dominio
linux-console.net
que apunta a un sistema Debian 10 con una dirección IP 192.168.0.104. - Una buena conexión a Internet.
Una vez realizada nuestra verificación previa al vuelo, comencemos.
Paso 1: actualice el repositorio del sistema Debian 10
El primer paso para instalar Apache en Debian 10 es actualizar los repositorios del sistema. Para lograr esto, inicie sesión como usuario normal y use los privilegios sudo para ejecutar el comando.
sudo apt update -y
Paso 2: instale Apache en Debian 10
Instalar Apache es muy sencillo y bastante sencillo. Una vez que haya actualizado correctamente los repositorios del sistema, ejecute el siguiente comando para instalar Apache en Debian 10.
sudo apt install apache2 -y
Paso 3: comprobar el estado del servidor web Apache
Después de una instalación exitosa del servidor web Apache, siempre se recomienda verificar si el servicio se está ejecutando. La mayoría de los sistemas systemd Linux iniciarán el servicio automáticamente tras la instalación.
Para comprobar el estado del servidor web Apache ejecute el comando.
sudo systemctl status apache2
Si el servicio no se está ejecutando, inícielo usando el comando.
sudo systemctl start apache2
Para habilitar el servidor Apache Web en el arranque, ejecute el comando.
sudo systemctl enable apache2
Para reiniciar Apache, ejecute.
sudo systemctl restart apache2
Paso 4: configurar el firewall para permitir el puerto HTTP
Si el firewall UFW ya está configurado, debemos permitir el servicio Apache a través del firewall para que los usuarios externos puedan tener acceso al servidor web.
Para lograr esto, debemos permitir el tráfico en el puerto 80 del firewall.
sudo ufw allow 80/tcp
Para verificar que el puerto haya sido permitido en el firewall, ejecute.
sudo ufw status
Además, puede utilizar el comando netstat para verificar el puerto como se muestra.
sudo netstat -pnltu
Paso 5: verificar el servidor web Apache HTTP
Con todas las configuraciones implementadas, abra su navegador web favorito y busque la dirección IP o FQDN de su servidor como se muestra.
http://server-IP-address
OR
http://server-domain-name
Paso 6: Configurar el servidor web Apache
Con el servidor web Apache ya configurado, es hora de alojar un sitio web de muestra.
El archivo de página web predeterminado de Apache index.html
se encuentra en /var/www/html/
, que es el directorio webroot. Puede alojar un solo sitio o crear archivos de host virtual para alojar varios sitios.
Para alojar un solo sitio, puede modificar el archivo index.html
ubicado en el directorio webroot.
Pero primero, haga una copia de seguridad del archivo como se muestra.
sudo mv /var/www/html/index.html /var/www/html/index.html.bak
Ahora creemos un nuevo archivo index.html
.
sudo nano /var/www/html/index.html
Agreguemos contenido de muestra HTML como se muestra.
<html>
<head>
<title>Welcome to crazytechgeek</title>
</head>
<body>
<h1>Howdy Geeks! Apache web server is up & running</h1>
</body>
</html>
Salga del editor de texto y reinicie el servidor web.
sudo systemctl restart apache2
Ahora recarga tu navegador web y observa los cambios en tu nuevo sitio.
Paso 7: creación de hosts virtuales en Apache
Si desea que su servidor web aloje varios sitios, la mejor manera de evitarlo es crear hosts virtuales en el servidor web Apache. Los hosts virtuales resultan útiles cuando desea alojar varios dominios en un solo servidor
Primero, necesitamos crear un directorio webroot para el dominio linux-console.net
.
sudo mkdir -p /var/www/html/linux-console.net/
A continuación, asignaremos los permisos necesarios al directorio usando la variable $USER
.
sudo chown -R $USER:$USER /var/www/html/linux-console.net/
A continuación, asigne los permisos necesarios del directorio webroot para el dominio.
sudo chmod -R 755 /var/www/html/linux-console.net
Ahora, utilizando su editor de texto favorito, diríjase y cree un archivo index.html
de muestra.
sudo nano /var/www/html/linux-console.net/index.html
Agreguemos contenido de muestra HTML como se muestra.
<html>
<head>
<title>Welcome to TecMint.com</title>
</head>
<body>
<h1>Howdy Geeks!</h1>
</body>
</html>
Guarde y salga del editor de texto.
Ahora, cree un archivo de host virtual para el dominio usando el comando que se muestra a continuación.
sudo nano /etc/apache2/sites-available/linux-console.net.conf
Ahora copie y pegue el contenido a continuación y reemplace el dominio linux-console.net
con su propio dominio.
<VirtualHost *:80>
ServerAdmin [email
ServerName linux-console.net
ServerAlias linux-console.net
DocumentRoot /var/www/html/linux-console.net/
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>
Guardar y Salir.
En este punto, habilite el archivo de host virtual como se muestra.
sudo a2ensite linux-console.net.conf
Ahora deshabilitemos el sitio predeterminado.
sudo a2dissite 000-default.conf
Para efectuar los cambios, vuelva a cargar el servidor web Apache.
sudo systemctl restart apache2
Ahora recarga tu servidor web y observa los cambios en tu dominio.
Si desea habilitar HTTPS en su sitio web, lea este artículo: Cómo configurar un certificado SSL gratuito para Apache en Debian 10.
Conclusión
Hemos llegado al final del tutorial. En esta guía, aprendió a instalar Apache en Debian 10 y también a configurar hosts virtuales para alojar otros dominios. No dude en comunicarse con nosotros con sus comentarios.