Este documento describe los archivos utilizados para configurar el servidor HTTP Apache.

Archivos de configuración principal

Módulos relacionados Directivas relacionadas

El servidor HTTP Apache se configura colocando directivas en archivos de configuración de texto sin formato. El archivo de configuración principal generalmente se llama httpd.conf. La ubicación de este archivo se establece en tiempo de compilación, pero se puede anular con la -f bandera de línea de comando. Además, se pueden agregar otros archivos de configuración usando el Include directiva, y se pueden utilizar comodines para incluir muchos archivos de configuración. Cualquier directiva puede colocarse en cualquiera de estos archivos de configuración. Httpd solo reconoce los cambios en los archivos de configuración principales cuando se inicia o reinicia.

El servidor también lee un archivo que contiene tipos de documentos mime; el nombre del archivo lo establece el TypesConfig directiva, y es mime.types por defecto.

Sintaxis de los archivos de configuración

Los archivos de configuración httpd contienen una directiva por línea. La barra invertida “” puede usarse como el último carácter de una línea para indicar que la directiva continúa en la siguiente línea. No debe haber otros caracteres o espacios en blanco entre la barra invertida y el final de la línea.

Los argumentos de las directivas están separados por espacios en blanco. Si una el argumento contiene espacios, debe encerrar ese argumento entre comillas.

Las directivas en los archivos de configuración no distinguen entre mayúsculas y minúsculas, pero los argumentos de las directivas a menudo distinguen entre mayúsculas y minúsculas. Las líneas que comienzan con el carácter de almohadilla “#” se consideran comentarios y se ignoran. Los comentarios pueden no incluirse en la misma línea que una directiva de configuración. Los espacios en blanco que aparecen antes de una directiva se ignoran, por lo que puede aplicar sangría a las directivas para mayor claridad. Las líneas en blanco también se ignoran.

Los valores de las variables definidas con el Define de o las variables de entorno de shell se pueden usar en líneas de archivos de configuración usando la sintaxis $VAR. Si “VAR” es el nombre de una variable válida, el valor de esa variable se sustituye en ese lugar en la línea del archivo de configuración y el procesamiento continúa como si ese texto se encontrara directamente en el archivo de configuración. Variables definidas con Define tienen prioridad sobre las variables de entorno de shell. Si no se encuentra la variable “VAR”, los caracteres $VAR no se modifican y se registra una advertencia. Los nombres de las variables no pueden contener dos puntos “:” caracteres, para evitar conflictos con RewriteMapsintaxis de.

Solo las variables de entorno de shell definidas antes de que se inicie el servidor se pueden usar en expansiones. Variables de entorno definidas en el propio archivo de configuración, por ejemplo con SetEnv, surte efecto demasiado tarde para usarse en expansiones en el archivo de configuración.

La longitud máxima de una línea en los archivos de configuración normales, después de la sustitución de variables y la unión de cualquier línea continua, es de aproximadamente 16 MiB. En archivos .htaccess, la longitud máxima es de 8190 caracteres.

Puede verificar sus archivos de configuración en busca de errores de sintaxis sin iniciar el servidor usando apachectl configtest o la -t opción de línea de comando.

Puedes usar mod_info‘s -DDUMP_CONFIG para volcar la configuración con todos los archivos incluidos y variables de entorno resueltos y todos los comentarios y no coincidentes y secciones eliminadas. Sin embargo, el resultado no refleja la combinación o anulación que puede ocurrir para las directivas repetidas.

Módulos

Módulos relacionados Directivas relacionadas

httpd es un servidor modular. Esto implica que solo se incluye la funcionalidad más básica en el servidor central. Las funciones ampliadas están disponibles a través de módulos que se pueden cargar en httpd. De forma predeterminada, se incluye un conjunto básico de módulos en el servidor en tiempo de compilación. Si el servidor está compilado para usar módulos cargados dinámicamente, entonces los módulos se pueden compilar por separado y agregar en cualquier momento usando el LoadModule directiva. De lo contrario, se debe volver a compilar httpd para agregar o eliminar módulos. Las directivas de configuración pueden incluirse condicionadas a la presencia de un módulo particular encerrándolas en un cuadra. Sin embargo, los bloques no son necesarios y, en algunos casos, pueden enmascarar el hecho de que le falta un módulo importante.

Para ver qué módulos están compilados actualmente en el servidor, puede usar el -l opción de línea de comando. También puede ver qué módulos se cargan dinámicamente usando el -M opción de línea de comando.

Alcance de las directivas

Módulos relacionados Directivas relacionadas

Las directivas ubicadas en los archivos de configuración principales se aplican a todo el servidor. Si desea cambiar la configuración solo para una parte del servidor, puede establecer el alcance de sus directivas colocándolas en , , , , , y secciones. Estas secciones limitan la aplicación de las directivas que adjuntan a ubicaciones particulares del sistema de archivos o URL. También se pueden anidar, lo que permite una configuración de grano muy fino.

httpd tiene la capacidad de servir a muchos sitios web diferentes simultáneamente. Esto se llama alojamiento virtual. Las directivas también se pueden definir colocándolas dentro secciones, de modo que solo se apliquen a las solicitudes de un sitio web en particular.

Aunque la mayoría de las directivas se pueden colocar en cualquiera de estas secciones, algunas directivas no tienen sentido en algunos contextos. Por ejemplo, las directivas que controlan la creación de procesos solo se pueden colocar en el contexto del servidor principal. Para saber qué directivas se pueden colocar en qué secciones, consulte el contexto de la directiva. Para obtener más información, proporcionamos detalles sobre cómo funcionan las secciones Directorio, Ubicación y Archivos.

Archivos .htaccess

Módulos relacionados Directivas relacionadas

httpd permite la gestión descentralizada de la configuración a través de archivos especiales colocados dentro del árbol web. Los archivos especiales se suelen llamar .htaccess, pero se puede especificar cualquier nombre en el AccessFileName directiva. Directivas colocadas en .htaccess Los archivos se aplican al directorio donde colocas el archivo y a todos los subdirectorios. los .htaccess Los archivos siguen la misma sintaxis que los archivos de configuración principales. Ya que .htaccess Los archivos se leen en cada solicitud, los cambios realizados en estos archivos tienen efecto inmediato.

Para encontrar qué directivas se pueden colocar en .htaccess archivos, verifique el contexto de la directiva. El administrador del servidor controla además las directivas que se pueden colocar en .htaccess archivos configurando el AllowOverride directiva en los archivos de configuración principales.

Para obtener más información sobre .htaccess archivos, consulte el tutorial .htaccess.