El servidor Apache HTTP es uno de los servidores web más populares del mundo. Es un servidor HTTP de código abierto y multiplataforma que alimenta un gran porcentaje de los sitios web de Internet. Apache proporciona muchas funciones potentes que se pueden ampliar a través de módulos adicionales.
En este tutorial, seguiremos los pasos para instalar Apache en un servidor Debian 9.
Requisitos previos #
Antes de comenzar con el tutorial, asegúrese de haber iniciado sesión como usuario con privilegios de sudo.
Instalando Apache #
Apache está disponible en los repositorios predeterminados de Debian y la instalación es bastante sencilla.
Primero actualice el índice del paquete y luego instale el apache2
paquete con los siguientes comandos:
sudo apt update
sudo apt install apache2
Eso es todo, Apache está instalado y se inicia automáticamente, puede verificar el estado del servicio de Apache con:
sudo systemctl status apache2
● apache2.service - The Apache HTTP Server
Loaded: loaded (/lib/systemd/system/apache2.service; enabled; vendor preset: enabled)
Active: active (running) since Thu 2018-08-23 20:04:47 UTC; 13s ago
Main PID: 11604 (apache2)
CGroup: /system.slice/apache2.service
├─11604 /usr/sbin/apache2 -k start
├─11608 /usr/sbin/apache2 -k start
└─11609 /usr/sbin/apache2 -k start
Ajustar el cortafuegos #
Si usa iptables para filtrar las conexiones a su sistema, deberá abrir HTTP (80
) y HTTPS (443
) puertos.
Abra los puertos necesarios emitiendo el siguiente comando:
sudo iptables -A INPUT -p tcp --dport 80 -j ACCEPT
sudo iptables -A INPUT -p tcp --dport 443 -j ACCEPT
Verificación de la instalación de Apache #
Para verificar que todo funciona correctamente, abra su navegador, escriba la dirección IP de su servidor o el nombre de dominio http://YOUR_IP_OR_DOMAIN/
y verá la página de bienvenida predeterminada de Apache como se muestra a continuación:
La página incluye información básica sobre archivos de configuración de Apache, scripts auxiliares y ubicaciones de directorios.
Administrar el servicio de Apache con systemctl #
Ahora que Apache está instalado en su sistema Debian, puede tomarse un minuto para revisar y familiarizarse con los comandos básicos de administración del servicio de Apache:
Para detener el servicio de Apache, ejecute:
sudo systemctl stop apache2
Comience de nuevo, escribiendo:
sudo systemctl start apache2
Para reiniciar el servicio Apache:
sudo systemctl restart apache2
Vuelva a cargar Apache con una nueva configuración con:
sudo systemctl reload apache2
Si desea deshabilitar el servicio de Apache para que se inicie en el arranque:
sudo systemctl disable apache2
Y para volver a habilitarlo de nuevo:
sudo systemctl enable apache2
Estructura y mejores prácticas del archivo de configuración de Apache #
- En los sistemas basados en Debian, los archivos de configuración de Apache se encuentran en
/etc/apache2
directorio. - El archivo de configuración principal de Apache es
/etc/apache2/apache2.conf
. - Los puertos que escuchará Apache se especifican en
/etc/apache2/ports.conf
archivo. - Los archivos de hosts virtuales de Apache se encuentran en
/etc/apache2/sites-available
directorio. Apache no utiliza los archivos de configuración que se encuentran en este directorio a menos que estén vinculados a/etc/apache2/sites-enabled
directorio. - Puede activar una directiva de host virtual creando un enlace simbólico usando el
a2ensite
comando de los archivos de configuración que se encuentran ensites-available
directorio alsites-enabled
directorio. Para desactivar un host virtual, use ela2dissite
comando. - Se recomienda encarecidamente seguir la convención de nomenclatura estándar, por ejemplo, si su nombre de dominio es
mydomain.com
entonces el archivo de configuración del dominio debe llamarse/etc/apache2/sites-available/mydomain.com.conf
- Los archivos de configuración que se utilizan para cargar varios módulos de Apache se encuentran en
/etc/apache2/mods-available
directorio. Configuraciones en elmods-available
El directorio se puede habilitar creando un enlace simbólico a/etc/apache2/mods-enable
directorio usando ela2enconf
comando y deshabilitado con ela2disconf
comando. - Los archivos que contienen fragmentos de configuración global se almacenan en
/etc/apache2/conf-available
directorio. Archivos en elconf-available
El directorio se puede habilitar creando un enlace simbólico al/etc/apache2/conf-enabled
usando ela2enconf
comando y deshabilitado con ela2disconf
comando. - Archivos de registro de Apache (
access.log
yerror.log
) se encuentran en el/var/log/apache
directorio. Se recomienda utilizar diferentesaccess
yerror
archivos de registro para cada host virtual. - Puede establecer el directorio raíz de documentos de su dominio en cualquier ubicación que desee. Las ubicaciones más comunes para webroot incluyen:
/home/<user_name>/<site_name>
/var/www/<site_name>
/var/www/html/<site_name>
/opt/<site_name>