<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE indexpage SYSTEM "./style/sitemap.dtd">
<?xml-stylesheet type="text/xsl" href="./style/manual.es.xsl"?>
<!-- English Revision: 1729668 -->
<!-- Translated by: Luis Gil de Bernabé Pfeiffer  -->
<!-- Reviewed by: Sergio Ramos -->

<!--
 Licensed to the Apache Software Foundation (ASF) under one or more
 contributor license agreements.  See the NOTICE file distributed with
 this work for additional information regarding copyright ownership.
 The ASF licenses this file to You under the Apache License, Version 2.0
 (the "License"); you may not use this file except in compliance with
 the License.  You may obtain a copy of the License at

     http://www.apache.org/licenses/LICENSE-2.0

 Unless required by applicable law or agreed to in writing, software
 distributed under the License is distributed on an "AS IS" BASIS,
 WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 See the License for the specific language governing permissions and
 limitations under the License.
-->

<indexpage metafile="index.xml.meta">
<parentdocument href="http://httpd.apache.org/docs-project/" />

<title>Apache HTTP Server Versión &httpd.major;.&httpd.minor;
Documentación</title>

<category id="release"><title>Release Notes</title>
    <page href="new_features_2_4.html">Nuevas funcionalidades en Apache 2.3/2.4</page>
    <page href="new_features_2_2.html">Nuevas funcionalidades en Apache 2.1/2.2</page>
    <page href="new_features_2_0.html">Nuevas funcionalidades en Apache 2.0</page>
    <page href="upgrading.html">Actualizar a la versión 2.4 desde la 2.2</page>
    <page href="license.html">Licencia Apache </page>
</category>

<category id="manual"><title>Manual de Referencia</title>
    <page href="install.html">Compilar e Instalar</page>
    <page href="invoking.html">Ejecutando Apache</page>
    <page href="stopping.html">Parada y Reinicio de Apache</page>
    <page href="mod/quickreference.html">Directivas de configuración en tiempo de ejecución</page>
    <page href="mod/">Módulos</page>
    <page href="mpm.html">Módulos de Procesamiento Múltiple (MPM)</page>
    <page href="filter.html">Filtros</page>
    <page href="handler.html">Handlers</page>
    <page href="expr.html">Analizador de Expresiones</page>
    <page href="programs/">Programas de Soporte y Servidor</page>
    <page href="glossary.html">Glosario</page>
</category>

<category id="usersguide"><title>Guía de Usuario</title>
    <page href="getting-started.html">Empezando</page>
    <page href="bind.html">Enlazando Direcciones y Puertos</page>
    <page href="configuring.html">Ficheros de Configuración</page>
    <page href="sections.html">Secciones de Configuración</page>
    <page href="caching.html">Almacenamiento de Contenido en Caché</page>
    <page href="content-negotiation.html">Negociación de Contenido</page>
    <page href="dso.html">Objetos Compartidos Dinámicamente (DSO)</page>
    <page href="env.html">Variables de Entorno</page>
    <page href="logs.html">Ficheros de Log</page>
    <page href="compliance.html">Cumplimiento del Protocolo HTTP</page>
    <page href="urlmapping.html">Mapeo de URLs al Sistema de Ficheros</page>
    <page href="misc/perf-tuning.html">Optimización del Rendimiento</page>
    <page href="misc/security_tips.html">Consejos de seguridad</page>
    <page href="server-wide.html">Configuración básica del Servidor</page>
    <page href="ssl/">Encryptado SSL/TLS</page>
    <page href="suexec.html">Ejecución de Suexec para CGI</page>
    <page href="rewrite/">Reescritura de URL con mod_rewrite</page>
    <page href="vhosts/">Servidores Virtuales</page>
</category>

<category id="howto"><title>How-To / Tutoriales</title>
    <page href="howto/auth.html">Autenticación y Autorización</page>
    <page href="howto/access.html">Control de Acceso</page>
    <page href="howto/cgi.html">CGI: Contenido Dinámico</page>
    <page href="howto/htaccess.html">Ficheros .htaccess</page>
    <page href="howto/ssi.html">Inclusiones del Lado del Servidor (SSI)</page>
    <page href="howto/public_html.html">Directorios Web por Usuario
    (public_html)</page>
</category>

<category id="platform"><title>Notas Sobre Plataformas Específicas</title>
    <page href="platform/windows.html">Microsoft Windows</page>
    <page href="platform/rpm.html">Sistemas Basados en RPM (Redhat / CentOS / Fedora)</page>
    <page href="platform/netware.html">Novell NetWare</page>
</category>

<category id="other"><title>Otros Temas</title>
    <page href="http://wiki.apache.org/httpd/FAQ">Preguntas Frecuentes</page>
    <page href="sitemap.html">Mapa del Sitio</page>
    <page href="developer/">Documentación para Desarolladores</page>
    <page href="http://httpd.apache.org/docs-project/">Contribuir en la Documentacion</page>
    <page href="misc/">Otras Notas</page>
    <page href="http://wiki.apache.org/httpd/">Wiki</page>
</category>

</indexpage>
