Directivas Clave de Apache para la Administración de Servidores Web

Enviado por Chuletator online y clasificado en Informática y Telecomunicaciones

Escrito el en español con un tamaño de 6,36 KB

Principales Directivas de Apache

A continuación, se describen algunas de las directivas de configuración más importantes del servidor web Apache:

DocumentRoot
Las páginas web de nuestro servidor deben estar todas guardadas en una misma carpeta raíz. Dentro de esta podremos crear más subcarpetas y clasificar así nuestros contenidos, guardando cada página donde consideremos más oportuno. ¿Cómo sabe el servidor web, cuando se va a ejecutar, dónde buscar los archivos que debe mostrar a los navegadores que le pedirán las páginas? Mediante esta directiva. Normalmente, el directorio por defecto es htdocs o www/html.
ServerName
Define el nombre del host (dominio) que el servidor utiliza para identificarse. Es importante para la configuración de Virtual Hosts.
ServerRoot
Indica el directorio raíz donde está instalado el software del servidor Apache.
Listen
Especifica los puertos y, opcionalmente, las direcciones IP en las que Apache escuchará las peticiones entrantes. Por defecto, suele ser el puerto 80 para HTTP y 443 para HTTPS.
DirectoryIndex
Define el nombre del archivo que Apache buscará y servirá automáticamente cuando un usuario solicite un directorio. Puede haber más de un nombre de archivo en orden de preferencia. Generalmente es index.html, index.php, etc.
ErrorDocument
Permite personalizar la página que se mostrará al usuario cuando ocurra un error específico (por ejemplo, 404 Not Found, 500 Internal Server Error).
ErrorLog
Especifica la ruta al archivo donde se registrarán los errores del servidor.
LogLevel
Controla el nivel de detalle de los mensajes que se almacenan en los archivos de registro (logs). Permite ajustar la verbosidad, desde errores críticos (crit) hasta información de depuración (debug).
Alias
Permite mapear una URL a un directorio específico del sistema de archivos que está fuera del DocumentRoot.
Allow
Utilizada (principalmente en versiones antiguas de Apache junto con Order y Deny) para indicar desde qué hosts (IPs, dominios) se permite el acceso a un recurso (directorio, archivo). Solo se puede utilizar dentro de secciones <Directory>, <Location>, <Files> o dentro de archivos .htaccess.
Deny
Complementaria a Allow, especifica qué máquinas o redes tienen prohibido el acceso al recurso.
Order
Define el orden en que se procesan las directivas Allow y Deny. Por ejemplo, Order deny,allow procesa primero las reglas Deny y luego las Allow.
Require
(Más común en Apache 2.4 y superior) Es el mecanismo moderno para el control de acceso. Permite especificar qué usuarios autenticados o qué hosts pueden acceder a un recurso. Ejemplos de valores incluyen Require all granted, Require all denied, Require user [nombre_usuario], Require valid-user (cualquier usuario autenticado válido), Require ip [direccion_ip].

Directivas para Directorios (Sección <Directory> y .htaccess)

Options

Controla qué características del servidor están disponibles en un directorio particular. Pensada principalmente para directorios, pero permitida en otras secciones. Algunas posibilidades importantes son:

  • FollowSymLinks: El servidor seguirá enlaces simbólicos dentro de este directorio. Es decir, permite que alias o accesos directos a archivos/carpetas funcionen correctamente a través de la web.
  • Indexes: Si un usuario accede a un directorio mediante URL y no existe un archivo índice (definido por DirectoryIndex), esta opción hace que se muestre un listado del contenido del directorio generado automáticamente por Apache. Por seguridad, a menudo se deshabilita (-Indexes).
  • Includes: Permite el uso de Server Side Includes (SSI).
  • ExecCGI: Permite la ejecución de scripts CGI.
  • MultiViews: Permite la negociación de contenido, donde el servidor elige el archivo que mejor se adapta a las preferencias del navegador si existen varias versiones (ej. index.html, index.en.html, index.es.html).
AllowOverride
Determina qué tipos de directivas, si las hay, pueden ser sobrescritas por las instrucciones contenidas en los archivos .htaccess dentro de un directorio. Estos archivos permiten ampliar o modificar la configuración principal para directorios específicos sin necesidad de editar la configuración central de Apache. En una configuración básica o por seguridad, a veces se deshabilita asignándole el valor None. Otros valores comunes son All, o combinaciones específicas como AuthConfig, FileInfo, Indexes, Limit, Options.
Allow / Deny / Order / Require
Estas directivas, mencionadas anteriormente, también se utilizan frecuentemente dentro de las secciones <Directory> o en archivos .htaccess para aplicar reglas de control de acceso específicas a ese directorio. Por ejemplo:
  • Require all denied: Prohibirá el acceso a cualquier navegador a todos los ficheros y carpetas que estén dentro de dicho directorio.
  • Require all granted: Permitirá acceder a cualquier navegador a todos los ficheros y carpetas dentro del directorio.
  • Se pueden combinar con Require ip [IP], Require host [dominio], etc., para un control más granular.

Entradas relacionadas: