208.1 - Comandos clave: Configuración básica de Apache

Comandos de gestión del servicio

ComandoDescripción
apachectl startInicia el servidor Apache
apachectl stopDetiene el servidor Apache
apachectl restartReinicia Apache (corta conexiones activas)
apachectl gracefulReinicio elegante sin interrumpir conexiones
apachectl configtestVerifica la sintaxis de configuración
apachectl -tEquivalente a configtest
apachectl -SMuestra la configuración de VirtualHosts
apachectl -MLista los módulos cargados (estáticos y dinámicos)
apachectl -VMuestra la versión y opciones de compilación

Comandos de gestión de módulos y sitios (Debian/Ubuntu)

ComandoDescripción
a2enmod <módulo>Habilita un módulo de Apache
a2dismod <módulo>Deshabilita un módulo de Apache
a2ensite <sitio>Habilita un VirtualHost
a2dissite <sitio>Deshabilita un VirtualHost
a2enconf <conf>Habilita un fragmento de configuración
a2disconf <conf>Deshabilita un fragmento de configuración
a2query -m <módulo>Consulta si un módulo está habilitado
a2query -MMuestra el MPM activo

Gestión de usuarios para autenticación

ComandoDescripción
htpasswd -c /ruta/.htpasswd usuarioCrea archivo de contraseñas y primer usuario
htpasswd /ruta/.htpasswd usuarioAñade o modifica un usuario
htpasswd -D /ruta/.htpasswd usuarioElimina un usuario del archivo
htpasswd -b /ruta/.htpasswd usuario claveEstablece contraseña en línea de comandos

Archivos de configuración principales

ArchivoDistribuciónDescripción
/etc/apache2/apache2.confDebian/UbuntuConfiguración principal
/etc/httpd/conf/httpd.confRed Hat/CentOSConfiguración principal
/etc/apache2/ports.confDebian/UbuntuPuertos de escucha
/etc/apache2/sites-available/Debian/UbuntuVirtualHosts disponibles
/etc/apache2/sites-enabled/Debian/UbuntuVirtualHosts habilitados
/etc/apache2/mods-available/Debian/UbuntuMódulos disponibles
/etc/apache2/mods-enabled/Debian/UbuntuMódulos habilitados
/etc/httpd/conf.d/Red Hat/CentOSConfiguraciones adicionales

Directivas de configuración esenciales

DirectivaEjemploDescripción
ServerRoot"/etc/httpd"Directorio base del servidor
Listen80Puerto de escucha
ServerNamewww.ejemplo.com:80Nombre del servidor
DocumentRoot"/var/www/html"Directorio raíz de documentos
ServerAdminadmin@ejemplo.comEmail del administrador
ErrorLog${APACHE_LOG_DIR}/error.logArchivo de log de errores
CustomLogaccess.log combinedArchivo de log de acceso con formato
LogLevelwarnNivel de detalle del log de errores
AllowOverrideAll / NoneControl de .htaccess
OptionsIndexes FollowSymLinksOpciones del directorio
Requireall granted / ip 10.0.0.0/8Control de acceso (Apache 2.4)

Archivos de log predeterminados

ArchivoDescripción
/var/log/apache2/access.logLog de acceso (Debian/Ubuntu)
/var/log/apache2/error.logLog de errores (Debian/Ubuntu)
/var/log/httpd/access_logLog de acceso (Red Hat/CentOS)
/var/log/httpd/error_logLog de errores (Red Hat/CentOS)