El servidor Apache es uno de los servidores web de código abierto más populares desarrollado y mantenido por Apache Software Foundation. Apache es, con diferencia, la aplicación de servidor web más utilizada en los sistemas operativos Linux, pero se puede utilizar en casi todas las plataformas de sistemas operativos, como Windows, MAC OS, OS/2, etc. Permite a los desarrolladores publicar su contenido a través de Internet.
Este artículo explica cómo instalar y configurar el servidor web Apache en Debian 11 (Bullseye) . Los mismos pasos funcionan y también se han probado en la versión anterior de Debian 10.
Instalar Apache 2 en Debian Linux
Siga los pasos a continuación para instalar Apache2 en su sistema usando los repositorios oficiales de Ubuntu.
Paso 1:actualizar los repositorios del sistema
Primero, necesitaremos actualizar los repositorios de paquetes en nuestro sistema operativo. Para eso, ejecute el siguiente comando en la Terminal como sudo:
$ sudo apt update
Cuando se le solicite la contraseña, ingrese la contraseña sudo.
Paso 2:Instale Apache 2 con el comando apt
A continuación, en este paso, instale el servidor web Apache2 con el siguiente comando:
$ sudo apt install apache2
Se le proporcionará un S/n opción para continuar con la instalación. Presiona y para continuar.
Paso 3:Verificar la instalación de Apache
Una vez que se completa la instalación, puede ver la versión de Apache instalada ejecutando el siguiente comando en la Terminal. De esta manera, también puede verificar que Apache se haya instalado correctamente en su sistema.
$ apache2 -version
Configurar los ajustes del cortafuegos
Si el firewall UFW se está ejecutando en su sistema, deberá permitir ciertos puertos web para que los usuarios externos puedan acceder a él. Para eso, ejecuta los siguientes comandos en la Terminal:
$ sudo ufw allow 80/tcp $ sudo ufw allow 443/tcp
Luego ejecute el siguiente comando para verificar si se han permitido los puertos.
$ sudo ufw status
Configurar los ajustes del servidor web Apache
Paso 1:Verifique que el servicio Apache se esté ejecutando
Después de la instalación, el servicio web de Apache comienza a ejecutarse automáticamente. Sin embargo, para asegurarse, ejecute el siguiente comando en la Terminal:
$ sudo systemctl status apache2
El resultado debería ser similar a esto:
Paso 2:Verificar el servidor web Apache
Puede verificar si el servidor web Apache funciona bien solicitando una página web del servidor web Apache.
Ejecute el siguiente comando en la Terminal para encontrar la dirección IP de su servidor.
$ hostname -I
Una vez que encuentre la dirección IP, escriba http:// seguido de la dirección IP de su servidor web de la siguiente manera:
http://server_IP
Al ingresar la dirección IP anterior, verá la siguiente página predeterminada de Apache.
Configurar servidores virtuales en Apache
Los hosts virtuales en Apache le permiten ejecutar múltiples sitios web en un solo servidor. Configuraremos aquí el host virtual en el servidor web Apache. Para eso, primero crearemos un sitio web llamado testdomain.info usando el bloque de servidor que está disponible en Apache por defecto.
Paso 1:Configure un nombre de dominio
Primero, crearemos un directorio en /var/www para nuestro host virtual testdomain.info .Para eso, usaremos el siguiente comando:
(Nota:Reemplace testdomain.info con su propio nombre de dominio).
$ sudo mkdir -p /var/www/testdomain.info/html
Ahora cambie la propiedad y los permisos usando los siguientes comandos:
$ sudo chown -R $USER:$USER /var/www/testdomain.info/html
$ sudo chmod -R 755 /var/www/testdomain.info
Ahora crearemos una página de índice de muestra para probar nuestro sitio testdomain.info. Para hacerlo, crearemos un archivo HTML usando el editor nano de la siguiente manera:
$ nano /var/www/testdomain.info/html/index.html
Agregue las siguientes líneas para la página de índice:
<html> <head> <title>Welcome to the page testdomain.info!</title> </head> <body> <h1>You got Lucky! Your testdomain.info server block is up!</h1> </body> </html>
Una vez hecho esto, presione Ctrl+O para guardar y luego Ctrl+X para salir del archivo.
Ahora crearemos un archivo de host virtual que servirá el contenido de su servidor usando el siguiente comando:
$ sudo nano /etc/apache2/sites-available/testdomain.info.conf
Ahora agregue los siguientes detalles de configuración para su nombre de dominio:
<VirtualHost *:80> ServerAdmin [email protected] ServerName testdomain.info ServerAlias www.testdomain.info DocumentRoot /var/www/testdomain.info/html ErrorLog ${APACHE_LOG_DIR}/error.log CustomLog ${APACHE_LOG_DIR}/access.log combined </VirtualHost>
Una vez hecho esto, presione Ctrl+O para guardar y luego Ctrl+X para salir del archivo.
Paso 2:habilite el archivo de configuración del dominio
Ahora habilite el archivo de host virtual usando el siguiente comando:
$ sudo a2ensite testdomain.info.conf
Ahora deshabilitemos las configuraciones predeterminadas de Apache usando el siguiente comando:
$ sudo a2dissite 000-default.conf
Para aplicar los cambios, reinicie el servicio Apache2 usando el siguiente comando:
$ sudo systemctl restart apache2
Paso 3:prueba de errores
Ahora pruebe la configuración en busca de errores de sintaxis:
$ sudo apache2ctl configtest
En caso de que no haya ningún error, recibirá el siguiente resultado.
En algunos casos, puede recibir el siguiente error (en este caso ocurrió durante nuestras pruebas en un sistema Debian 10):
Para resolver este error, edite servername.conf archivo ejecutando el siguiente comando:
$ sudo nano /etc/apache2/conf-available/servername.conf
Agregue la siguiente línea en él:
ServerName testdomain.info
Una vez hecho esto, presione Ctrl+O para guardar y luego Ctrl+X para salir del archivo.
Después de eso, ejecute el siguiente comando:
$ sudo a2enconf servername
Ahora recarga el Apache2:
$ systemctl reload apache2
Una vez hecho esto, vuelva a ejecutar el siguiente comando para probar el archivo de configuración:
$ sudo apache2ctl configtest
Ahora verá que el error ha sido eliminado.
Paso 4:Pruebe si Apache está sirviendo su nombre de dominio
Ahora abra el navegador y navegue hasta:
http://testdomain.info
Reemplace testdomain.info con su propio nombre de dominio.
La siguiente página de índice muestra que ahora puede acceder a todos sus sitios web.
Algunos comandos comunes de administración de Apache
Estos son algunos de los comandos más comunes que se pueden usar para administrar los servicios de Apache:
Use el siguiente comando para iniciar el servidor Apache:
$ sudo systemctl start apache2
Use el siguiente comando para detener el servidor Apache:
$ sudo systemctl stop apache2
Use el siguiente comando para reiniciar el servidor Apache:
$ sudo systemctl restart apache2
Use el siguiente comando para recargar el servidor Apache:
$ sudo systemctl reload apache2
Utilice el siguiente comando para iniciar siempre el servicio en el arranque:
$ sudo systemctl enable apache2
Use el siguiente comando para deshabilitar el servidor Apache:
$ sudo systemctl disable apache2
En este artículo, hemos aprendido cómo instalar y configurar el servidor web Apache en un sistema operativo Debian 11 o Debian 10. Hemos realizado algunas configuraciones básicas que incluyen cambios en el firewall, configurar el host virtual y cómo administrar los servicios de Apache usando algunos comandos. Espero que le haya dado una descripción básica de cómo usar Apache para alojar los sitios web correctamente.