Hello,

Attached to this message you will find the following files :
manual/upgrading.xml.es
manual/new_features_2_0.xml.es
manual/mod/leader.xml.es
manual/mod/prefork.xml.es
manual/mod/worker.xml.es
The translation has been reviewed by Daniel Lopez and this time the
copyright year has been changed to 2004.

Just to let you know, at the moment we are also working on :
manual/mod/core.xml.es
manual/mod/directive-dict.xml.es
manual/mod/mpm_common.xml.es
manual/mod/mpm_winnt.xml.es
manual/vhost/index.xml.es
manual/vhost/name_based.xml.es
and should submit those soon.

Best Regards,

-- 
Jesus Blanco                         www.bitrock.com  
Product Manager
e: blanco @ bitrock.com   t: +34 669 23 43 57  f: +34 954 502 697
<?xml version="1.0"?>
<!DOCTYPE modulesynopsis SYSTEM "../style/modulesynopsis.dtd">
<?xml-stylesheet type="text/xsl" href="../style/manual.en.xsl"?>
<!-- English Revision: 1.1.2.7  -->

<!--
 Copyright 2004 The Apache Software Foundation

 Licensed 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.
-->

<modulesynopsis metafile="leader.xml.meta">
<name>leader</name>
<description>Variante experimental del MPM est&#225;ndar
<module>worker</module></description>
<status>MPM</status>
<sourcefile>leader.c</sourcefile>
<identifier>mpm_leader_module</identifier>

<summary>
    <note type="warning"><title>Warning</title>
      <p>Este m&#243;dulo es todav&#237;a experimental, lo que
      significa que podr&#237;a no funcionar como es debido.</p>
    </note>
    
    <p>Este m&#243;dulo es una variante experimental del m&#243;dulo
    de multiprocesamiento est&#225;ndar <module>worker</module>. Usa
    un patr&#243;n de dise&#241;o Leader/Followers para coordinar el
    trabajo entre las hebras. Para m&#225;s informaci&#243;n, consulte
    <a href="http://deuce.doc.wustl.edu/doc/pspdfs/lf.pdf";
    >http://deuce.doc.wustl.edu/doc/pspdfs/lf.pdf</a>.</p>

    <p>Para usar el MPM <module>leader</module>, a&#241;ada
      <code>--with-mpm=leader</code> como argumento al script
      <code>configure</code> en el momento de compilar
      <code>httpd</code>.</p>
  
    <p>Este m&#243;dulo de multiprocesamiento depende de operaciones
    at&#243;micas compare-and-swap del APR para sicronizar las
    hebras. Si est&#225; compilando el servidor para una m&#225;quina
    x86 y no necesita soportar la arquitectura 386, o est&#225;
    compilando para una m&#225;quina SPARC y no necesita ejecutar el
    servidor en chips pre-UltraSPARC, a&#241;ada
    <code>--enable-nonportable-atomics=yes</code> como argumento al
    script <code>configure</code>. Esto har&#225; que APR implemente
    las operaciones at&#243;micas usando opciones m&#225;s eficientes
    que no est&#225;n presentes en CPUs antiguas.</p>
</summary>

<directivesynopsis location="mpm_common"><name>AcceptMutex</name>
</directivesynopsis>
<directivesynopsis location="mpm_common"><name>CoreDumpDirectory</name>
</directivesynopsis>
<directivesynopsis location="mpm_common"><name>EnableExceptionHook</name>
</directivesynopsis>
<directivesynopsis location="mpm_common"><name>Group</name>
</directivesynopsis>
<directivesynopsis location="mpm_common"><name>Listen</name>
</directivesynopsis>
<directivesynopsis location="mpm_common"><name>ListenBacklog</name>
</directivesynopsis>
<directivesynopsis location="mpm_common"><name>SendBufferSize</name>
</directivesynopsis>
<directivesynopsis location="mpm_common"><name>LockFile</name>
</directivesynopsis>
<directivesynopsis location="mpm_common"><name>MaxClients</name>
</directivesynopsis>
<directivesynopsis location="mpm_common"><name>MaxMemFree</name>
</directivesynopsis>
<directivesynopsis location="mpm_common"><name>MaxRequestsPerChild</name>
</directivesynopsis>
<directivesynopsis location="mpm_common"><name>MaxSpareThreads</name>
</directivesynopsis>
<directivesynopsis location="mpm_common"><name>MinSpareThreads</name>
</directivesynopsis>
<directivesynopsis location="mpm_common"><name>PidFile</name>
</directivesynopsis>
<directivesynopsis location="mpm_common"><name>ScoreBoardFile</name>
</directivesynopsis>
<directivesynopsis location="mpm_common"><name>ServerLimit</name>
</directivesynopsis>
<directivesynopsis location="mpm_common"><name>StartServers</name>
</directivesynopsis>
<directivesynopsis location="mpm_common"><name>ThreadLimit</name>
</directivesynopsis>
<directivesynopsis location="mpm_common"><name>ThreadsPerChild</name>
</directivesynopsis>
<directivesynopsis location="mpm_common"><name>User</name>
</directivesynopsis>

</modulesynopsis>

<?xml version='1.0' encoding='UTF-8' ?>
<!DOCTYPE manualpage SYSTEM "./style/manualpage.dtd">
<?xml-stylesheet type="text/xsl" href="./style/manual.es.xsl"?>
<!-- English Revision: 1.4.2.6  -->

<!--
 Copyright 2004 The Apache Software Foundation

 Licensed 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.
-->

<manualpage metafile="new_features_2_0.xml.meta">

<title>Visi&#243;n general de las nuevas funcionalidades de Apache
2.0</title>

<summary>
  <p>Este documento describe algunas de las diferencias m&#225;s
  importantes que existen entre las versiones 1.3 y 2.0 del Servidor
  HTTP Apache.</p>
</summary>

<seealso><a href="upgrading.html">Migrar su instalaci&#243;n de la
versi&#243;n 1.3 a la 2.0</a></seealso>

  <section id="core">
    <title>Principales Mejoras</title>

    <dl>
      <dt>Hebrado en Unix</dt>

      <dd>En los sistemas Unix que soportan hebras POSIX, la nueva
      versi&#243;n de Apache puede ejecutarse en modo h&#237;brido
      multiproceso-multihebra. Esto mejora la escalabilidad para
      muchas aunque no para todas las configuraciones.</dd>

      <dt>Nuevo sistema de configuraci&#243;n y compilaci&#243;n</dt>

      <dd>El sistema de configuraci&#243;n y compilaci&#243;n ha sido
      escrito de nuevo desde cero para basarlo en
      <code>autoconf</code> y <code>libtool</code>.  Esto hace que el
      sistema de configuraci&#243;n de Apache se parezca ahora
      m&#225;s al de otros proyectos Open Source.</dd>

      <dt>Soporte Multiprotocolo</dt>

      <dd>La nueva versi&#243;n tiene la infraestructura necesaria
      para servir distintos protocolos. Por ejemplo, se ha escrito el
      m&#243;dulo <module>mod_echo</module>.</dd>

      <dt>Soporte mejorado para las plataformas que no son tipo Unix</dt>

      <dd>La versi&#243;n 2.0 de Apache es m&#225;s r&#225;pida y
      m&#225;s estable en sistemas que no son tipo Unix, tales como
      BeOS, OS/2 y Windows, que la versi&#243;n antigua. Con la
      introducci&#243;n de <a href="mpm.html">m&#243;dulos de
      multiprocesamiento</a> (MPMs) espec&#237;ficos para cada
      plataforma y del Apache Portable Runtime (APR), estas
      plataformas tienen ahora implementada su propia API nativa,
      evitando las capas de emulaci&#243;n POSIX que provocan
      problemas y un bajo rendimiento.</dd>

      <dt>Nueva interfaz de programaci&#243;n (API) de Apache</dt>

      <dd>La API para los m&#243;dulos ha cambiado significativamente
      en la nueva versi&#243;n. Muchos de los problemas de
      ordenci&#243;n y prioridad de m&#243;dulos de la versi&#243;n
      1.3 deben haber desaparecido. Apache 2.0 hace automaticamente
      mucho de lo que es necesario, y la ordenaci&#243;n de
      m&#243;dulos se hace ahora por hooks, lo que ofrece una mayor
      flexibilidad. Tambi&#233;n se han a&#241;adido nuevas llamadas
      que ofrecen capacidades adicionales sin tener que parchear el
      n&#250;cleo del servidor Apache.</dd>

      <dt>Soporte de IPv6</dt>

      <dd>En los sitemas que soportan IPv6 con la libreria Apache
      Portable Runtime, Apache soporta IPv6 listening sockets por
      defecto. Adem&#225;s, las directivas <directive
      module="mpm_common">Listen</directive>, <directive module="core"
      >NameVirtualHost</directive>, y <directive module="core"
      >VirtualHost</directive> soportan direcciones IPv6
      num&#233;ricas (por ejemplo, "<code>Listen
      [fe80::1]:8080</code>").</dd>

      <dt>Filtros</dt>

      <dd>Los m&#243;dulos de Apache pueden ahora escribirse para que
      se comporten como filtros que act&#250;an sobre el flujo de
      contenidos tal y como salen del servidor o tal y como son
      recibidos por el servidor. Esto permite, por ejemplo, que el
      resultado de un script CGI sea analizado por las directivas
      Server Side Include usando el filtro <code>INCLUDES</code> del
      m&#243;dulo <module>mod_include</module>. El m&#243;dulo
      <module>mod_ext_filter</module> permite que programas externos
      act&#250;en como filtros casi del mismo modo que los CGIs pueden
      actuar como handlers.</dd>

      <dt>Mensajes de error en diferentes idiomas</dt>

      <dd>Los mensajes de error que se env&#237;an a los navegadores
      est&#225;n ahora disponibles en diferentes idiomas, usando
      documentos SSI. Estos mensajes pueden personalizarse por el
      administrador del sitio web para conseguir un look and feel
      coherente con el resto de los contenidos.</dd>

      <dt>Configuraci&#243;n simplificada</dt>

      <dd>Muchas directivas que pod&#237;an inducir a confusi&#243;n
      han sido simplificadas. Las directivas <code>Port</code> y
      <code>BindAddress</code> han desaparecido; para configurar la
      direcci&#243;n IP en la que escucha el servidor ahora se usa
      &#250;nicamente la directiva <directive
      module="mpm_common">Listen</directive>; la directiva <directive
      module="core">ServerName</directive> especifica el nombre del
      servidor y el n&#250;mero del puerto solo para redirecionamiento
      y reconocimento de host virtual.</dd>

      <dt>Soporte de Unicode Nativo para Windows NT</dt>

      <dd>Apache 2.0 en Windows NT usa ahora utf-8 para la
      codificaci&#243;n de los nombres de fichero. Estos se mapean
      directamente al sistema de ficheros Unicode subyanciente,
      suministrando soporte para diferentes idiomas para todas
      instalaciones en Windows NT, includidos Windows 2000 y Windows
      XP. <em>Este soporte no se extiende a Windows 95, 98 o ME, que
      contin&#250;an usando la codificaci&#243;n que tenga la
      m&#225;quina local para el acceso al sistema de
      archivos.</em></dd>

      <dt>Actulizaci&#243;n de la librer&#237;a de expresiones
      regulares (regular expressions)</dt>

      <dd>Apache 2.0 incluye la <a
      href="http://www.pcre.org/";>Librer&#237;a de expresiones
      regulares compatibles de/con Perl</a> (PCRE).  Ahora, cuando se
      eval&#250;an las expresiones tipo, se usa siempre la potente
      sintaxis de Perl 5.</dd>

    </dl>
  </section>

  <section id="module">
    <title>Mejoras en los m&#243;dulos</title>

    <dl>
      <dt><module>mod_ssl</module></dt>

      <dd>M&#243;dulo nuevo en Apache 2.0. Este m&#243;dulo es una
      interfaz para los protocolos de encriptado SSL/TLS de
      OpenSSL.</dd>

      <dt><module>mod_dav</module></dt>

      <dd>M&#243;dulo nuevo en Apache 2.0. Este m&#243;dulo implementa
      la especificaci&#243;n del HTTP Distributed Authoring and
      Versioning (DAV) para colgar y mantener contenidos web.</dd>

      <dt><module>mod_deflate</module></dt>

      <dd>M&#243;dulo nuevo en Apache 2.0.  Este m&#243;dulo permite
      soportar nevagadores que requieren que el contenido sea
      comprimido antes de ser servido, ahorrando ancho de banda.</dd>

      <dt><module>mod_auth_ldap</module></dt>

      <dd>M&#243;dulo nuevo en Apache 2.0.41. Este m&#243;dulo permite
      que se pueda usar una base de datos LDAP para almacenar las
      credenciales en la autentificaci&#243;n b&#225;sica HTTP.  El
      m&#243;dulo de acompa&#241;amiento, <module>mod_ldap</module>
      ofrece connection pooling y cache de resultados.</dd>

      <dt><module>mod_auth_digest</module></dt>

      <dd>Incluye soporte adicional para cache de sesiones entre
      procesos usando memoria compartida.</dd>

      <dt><module>mod_charset_lite</module></dt>

      <dd>M&#243;dulo nuevo en Apache 2.0. Este m&#243;dulo
      experimental permite for traducci&#243;n o recodificaci&#243;n
      de sets de caracteres.</dd>

      <dt><module>mod_file_cache</module></dt>

      <dd>M&#243;dulo nuevo en Apache 2.0. Este m&#243;dulo incluye la
      funcionalidad que <code>mod_mmap_static</code> ten&#237;a en
      Apache 1.3, e incorpora nuevas capacidades de cacheado.</dd>

      <dt><module>mod_headers</module></dt>

      <dd>Este m&#243;dulo es mucho m&#225;s flexible en Apache
      2.0. Ahora puede modificar las cabeceras de las peticiones
      usadas por <module>mod_proxy</module>, y puede fijar
      condicionalmente cabeceras de respuesta.</dd>

      <dt><module>mod_proxy</module></dt>

      <dd>El m&#243;dulo proxy ha sido completamente reescrito para
      aprovechar la nueva infraestructura de filtros y para
      implementar de una manera m&#225;s fiable un proxy que cumpla
      con requerimientos de la especificaci&#243;n
      HTTTP/1.1. Adem&#225;s, se han incorporado nuevas secciones de
      configuraci&#243;n a la directiva <directive module="mod_proxy"
      type="section">Proxy</directive> que hacen mas f&#225;cil (e
      internamente m&#225;s r&#225;pido) el control de los sitios web
      que usan proxys; las configuraciones de sobrecarga
      <code>&lt;Directory "proxy:..."&gt;</code> no se soportan. El
      m&#243;dulo est&#225; ahora dividido en m&#243;dulos
      espec&#237;ficos para cada protocolo, incluidos
      <code>proxy_connect</code>, <code>proxy_ftp</code> y
      <code>proxy_http</code>.</dd>

      <dt><module>mod_negotiation</module></dt>

      <dd>La nueva directiva <directive module="mod_negotiation"
      >ForceLanguagePriority</directive> se puede usar para asegurarse
      de que el cliente recibe siempre solo un documento, en lugar de
      obtener una respuesta de tipo NOT ACCEPTABLE o MULTIPLE
      CHOICES. Adem&#225;s, los algoritmos de negociaci&#243;n y
      MultiView han sido modificados para ofrecer resultados m&#225;s
      consistentes y se ha incluido a nuevo tipo de correspondecia de
      tipos (type map).</dd>

      <dt><module>mod_autoindex</module></dt>

      <dd>Ahora pueden configurarse listados de directorios
      autoindexados para usar tablas HTML, darles formato de forma
      m&#225;s sencilla, y permitir control detallado del
      ordenamiento, incluidos ordenamiento por versi&#243;n, y
      filtrado usando caracteres comodines de los listados de
      directorios.</dd>

      <dt><module>mod_include</module></dt>

      <dd>Estas nuevas directivas permiten cambiar las etiquetas por
      defecto de comienzo y final para elementos SSI y permiten que la
      configuraci&#243;n de errores y el formato de la hora y la fecha
      se hagan en el fichero de configuraci&#243;n pricipal en lugar
      de en el documento SSI. Los resultados del an&#225;lisis y la
      agrupaci&#243;n de las expresiones tipo (ahora basadas en la
      sintaxis de Perl 5) pueden ser devueltos usando las variables
      <code>$0</code> .. <code>$9</code> del m&#243;dulo
      <module>mod_include</module>.</dd>

      <dt><module>mod_auth_dbm</module></dt>

      <dd>Ahora se soportan varias clases de bases de datos de tipo
      DBM usando la directiva <directive
      module="mod_auth_dbm">AuthDBMType</directive>.</dd>

    </dl>
  </section>
</manualpage>

<?xml version="1.0"?>
<!DOCTYPE modulesynopsis SYSTEM "../style/modulesynopsis.dtd">
<?xml-stylesheet type="text/xsl" href="../style/manual.en.xsl"?>
<!-- English Revision: 1.8.2.7  -->

<!--
 Copyright 2004 The Apache Software Foundation

 Licensed 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.
-->

<modulesynopsis metafile="prefork.xml.meta">

<name>prefork</name>
<description>Implementa un servidor web pre-forking y no
hebrado</description>
<status>MPM</status>
<sourcefile>prefork.c</sourcefile>
<identifier>mpm_prefork_module</identifier>

<summary>
    <p>Este M&#243;dulo de MultiProcesamiento (MPM) implementa un
    servidor web pre-forking y no hebrado que trata las peticiones de
    una manera similar a como lo hac&#237;a Apache 1.3.  Esto es
    apropiado para sitios web que necesitan evitar el hebrado para ser
    compatibles con librer&#237;as que no son seguras cuado se usan
    hebras.  Es tambi&#233;n el mejor MPM para aislar cada
    petici&#243;n, de manera que si suge un problema con una
    petici&#243;n, esto no afecte al resto.</p>

    <p>Este MPM est&#225; muy autorregulado, de manera que muy pocas
    veces es necesario ajustar los valores de sus directivas de
    configuraci&#243;n. El valor que se fije en la directiva
    <directive module="mpm_common">MaxClients</directive> debe ser lo
    suficientemente grande para tratar tantas peticiones
    simult&#225;neas como espere recibir su sitio web, pero lo
    suficientemente peque&#241;o para asegurarse de que hay memoria
    RAM suficiente para todos los procesos.</p>
</summary>
<seealso><a href="../bind.html">Especificar las direcciones y los puertos
que usa Apache</a></seealso>

<section id="how-it-works"><title>C&#243;mo funciona</title> <p>Un
    solo proceso de control es el responsable de lanzar los procesos
    hijo que escuchan las peticiones que se puedan producir y las
    sirven cuando llegan. Apache siempre intenta mantener varios
    procesos <dfn>de sobra</dfn> o en espera, que est&#233;n
    disponibles para servir peticiones cuando lleguen. As&#237;, los
    clientes no tienen que esperar a que un nuevo proceso hijo sea
    creado para ser atendidos.</p>

    <p>Las directivas <directive
    module="mpm_common">StartServers</directive>, <directive
    module="prefork">MinSpareServers</directive>, <directive
    module="prefork">MaxSpareServers</directive>, y <directive
    module="mpm_common">MaxClients</directive> regulan la forma en que
    el proceso padre crea hijos para servir peticiones. En general,
    Apache funciona bien sin hacer muchas modificaciones en los
    valores por defecto de estas directivas, de manera que la mayor
    parte de los sitios web no necesitan ajustar esas directivas a
    valores diferentes. Los sitios web que necesiten servir m&#225;s
    de 256 peticiones simult&#225;neas pueden necesitar incrementar el
    valor de <directive module="mpm_common">MaxClients</directive>,
    mientras que los sitios web con memoria limitada pueden necesitar
    decrementar <directive module="mpm_common">MaxClients</directive>
    para evitar que el rendimiento del servidor se degrade (pasando
    los contenidos de memoria al disco y de vuelta a memoria). Puede
    obtener m&#225;s informaci&#243;n sobre como mejorar el
    rendimiento del proceso de creaci&#243;n de procesos en la
    documentaci&#243;n sobre <a href="../misc/perf-tuning.html">mejora
    del rendimiento</a>.</p>

    <p>El proceso padre de Apache se inicia normalmente como usuario
    <code>root</code> en Unix para que escuche en el puerto 80, sin
    embargo, los procesos hijo se crean con menores privilegios de
    usuario. Las directivas <directive
    module="mpm_common">User</directive> y <directive
    module="mpm_common">Group</directive> se usan para determinar los
    privilegios de los procesos hijo de Apache. Los procesos hijo
    deben ser capaces de leer todos los contenidos que van a servir,
    pero deben tener los menores privilegios posibles.</p>

    <p>La directiva <directive
    module="mpm_common">MaxRequestsPerChild</directive> controla
    c&#243;mo el servidor recicla frecuentemente los procesos
    eliminando los antiguos y creando nuevos.</p>
</section>

<directivesynopsis location="mpm_common"><name>BS2000Account</name>
</directivesynopsis>
<directivesynopsis location="mpm_common"><name>CoreDumpDirectory</name>
</directivesynopsis>
<directivesynopsis location="mpm_common"><name>EnableExceptionHook</name>
</directivesynopsis>
<directivesynopsis location="mpm_common"><name>PidFile</name>
</directivesynopsis>
<directivesynopsis location="mpm_common"><name>Listen</name>
</directivesynopsis>
<directivesynopsis location="mpm_common"><name>ListenBacklog</name>
</directivesynopsis>
<directivesynopsis location="mpm_common"><name>LockFile</name>
</directivesynopsis>
<directivesynopsis location="mpm_common"><name>MaxClients</name>
</directivesynopsis>
<directivesynopsis location="mpm_common"><name>MaxMemFree</name>
</directivesynopsis>
<directivesynopsis location="mpm_common"><name>MaxRequestsPerChild</name>
</directivesynopsis>
<directivesynopsis location="mpm_common"><name>ScoreBoardFile</name>
</directivesynopsis>
<directivesynopsis location="mpm_common"><name>SendBufferSize</name>
</directivesynopsis>
<directivesynopsis location="mpm_common"><name>ServerLimit</name>
</directivesynopsis>
<directivesynopsis location="mpm_common"><name>StartServers</name>
</directivesynopsis>
<directivesynopsis location="mpm_common"><name>User</name>
</directivesynopsis>
<directivesynopsis location="mpm_common"><name>Group</name>
</directivesynopsis>
<directivesynopsis location="mpm_common"><name>AcceptMutex</name>
</directivesynopsis>

<directivesynopsis>
<name>MaxSpareServers</name>
<description>N&#250;mero m&#225;ximo de procesos hijo en espera que
puede tener el servdor</description>
<syntax>MaxSpareServers <var>number</var></syntax>
<default>MaxSpareServers 10</default>
<contextlist><context>server config</context></contextlist>

<usage>
    <p>La directiva <directive>MaxSpareServers</directive> determina
    el n&#250;mero m&#225;ximo de procesos hijo <em>en espera</em>
    deseado. Un proceso en espera es aquel que no est&#225; atendiendo
    ninguna petici&#243;n. Si hay m&#225;s de
    <directive>MaxSpareServers</directive> procesos hijo en espera,
    entonces el proceso padre elimina el exceso.</p>

    <p>Ajustar este par&#225;metro debe ser necesario solo en sitios
    web con muchas visitas. Fijar un valor alto para este
    par&#225;metro es una mala idea casi siempre. Si fija un valor por
    debajo de <directive module="prefork">MinSpareServers</directive>,
    Apache ajustar&#225; autom&#225;ticamente el valor a <directive
    >MinSpareServers</directive><code> + 1</code>.</p>
</usage>
<seealso><directive module="prefork">MinSpareServers</directive></seealso>
<seealso><directive module="mpm_common">StartServers</directive></seealso>
</directivesynopsis>

<directivesynopsis>
<name>MinSpareServers</name>
<description>N&#250;mero m&#237;nimo de procesos hijo en espera</description>
<syntax>MinSpareServers <var>number</var></syntax>
<default>MinSpareServers 5</default>
<contextlist><context>server config</context></contextlist>

<usage>
    <p>La directiva <directive>MinSpareServers</directive> fija el
    n&#250;mero m&#237;nimo de procesos hijo <em>en espera</em>. Un
    proceso en espera es aquel que no est&#225; atendiendo ninguna
    petici&#243;n. Si hay menos procesos hijo en espera que
    <directive>MinSpareServers</directive>, entonces el proceso padre
    crea nuevos procesos hijo a un ritmo m&#225;ximo de uno por
    segundo.</p>

    <p>Ajustar este par&#225;metro debe ser necesario solo en sitios
    web con muchas visitas. Fijar un valor alto para este
    par&#225;metro es una mala idea casi siempre.</p>
</usage>
<seealso><directive module="prefork">MaxSpareServers</directive></seealso>
<seealso><directive module="mpm_common">StartServers</directive></seealso>
</directivesynopsis>

</modulesynopsis>


<?xml version='1.0' encoding='UTF-8' ?>
<!DOCTYPE manualpage SYSTEM "./style/manualpage.dtd">
<?xml-stylesheet type="text/xsl" href="./style/manual.en.xsl"?>
<!-- English Revision: 1.6.2.8  -->

<!--
 Copyright 2004 The Apache Software Foundation

 Licensed 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.
-->

<manualpage metafile="upgrading.xml.meta">

<title>Migrar su instalaci&#243;n de la versi&#243;n 1.3 a la
2.0</title>

<summary>
  <p>Este documento recoge infomaci&#243;n cr&#237;tica sobre el
  proceso de actulizaci&#243;n de la versi&#243;n de Apache que
  usa. Se trata de peque&#241;os comentarios. Puede encontrar m&#225;s
  informaci&#243;n tanto en <a href="new_features_2_0.html">Nuevas
  funcionalidades</a>, como en el archivo
  <code>src/CHANGES</code>.</p>
</summary>
<seealso><a href="new_features_2_0.html">Visi&#243;n general de las
nuevas funcionalidades de Apache 2.0</a></seealso>

  <section id="compile-time">
    <title>Cambios en el proceso de configuraci&#243;n y
    compilaci&#243;n</title>

    <ul>
      <li>Apache usa ahora <code>autoconf</code> y
      <code>libtool</code> <a href="install.html"> en el proceso de
      compilaci&#243;n</a>.  Este sistema es parecido aunque no igual
      al sistema APACI de Apache 1.3.</li>

      <li>Adem&#225;s de la selecci&#243;n de m&#243;dulos habitual
      que puede hacer al compilar, en Apache 2.0 la mayor parte del
      procesamiento de las petici&#243;n es llevada a cabo por los <a
      href="mpm.html">M&#243;dulos de MultiProcesamiento</a>
      (MPMs).</li>
    </ul>
  </section>

  <section id="run-time">
    <title>Cambios en el proceso de la configuraci&#243;n inicial del
    servidor</title>

    <ul>
      <li>Muchas directivas que no pertenic&#237;an al conjunto
      b&#225;sico en Apache 1.3 est&#225;n ahora en los MPMs. Si desea
      que el nuevo servidor de comporte de la forma m&#225;s parecida
      posible a Apache 1.3, debe seleccionar el M&#243;dulo de
      MultiProcesamiento <module>prefork</module>. Otros MPMs tienen
      diferentes directivas para controlar el proceso de creaci&#243;n
      y procesamiento de peticiones.</li>

      <li>El <a href="mod/mod_proxy.html">m&#243;dulo proxy</a> ha
      sido remodelado para ponerlo al d&#237;a con la
      especificaci&#243;n HTTP/1.1.  Entre los cambios m&#225;s
      importantes est&#225; el que ahora el control de acceso al proxy
      est&#225; dentro de un bloque <directive type="section"
      module="mod_proxy">Proxy</directive> en lugar de en un bloque
      <code>&lt;Directory proxy:&gt;</code>.</li>

      <li>El procesamiento de<code>PATH_INFO</code> (la informacion de
      path que aparece tras un nombre de fichero v&#225;lido) ha
      cambiado para algunos m&#243;dulos. M&#243;dulos que fueron
      previamente implementados como un handle pero ahora son
      implementados como filtros puede que no acepten ahora peticiones
      que incluyan <code>PATH_INFO</code>. Filtros como <a
      href="mod/mod_include.html">INCLUDES</a> o <a
      href="http://www.php.net/";>PHP</a> est&#225;n implementados
      encima del handler principal (core handler) core handler, y por
      tanto rechazan peticiones con <code>PATH_INFO</code>. Puede usar
      la directiva <directive module="core">AcceptPathInfo</directive>
      para forzar al handler principal a aceptar peticiones con
      <code>PATH_INFO</code> y por tanto restaurar la habilidad de
      usar <code>PATH_INFO</code> en server-side includes.</li>

      <li>La directiva <directive
      module="mod_negotiation">CacheNegotiatedDocs</directive> toma
      ahora como argumento <code>on</code> u <code>off</code>. Las
      instacias existentes de <directive
      >CacheNegotiatedDocs</directive> deben reemplazarse por
      <code>CacheNegotiatedDocs on</code>.</li>

      <li>
        La directiva <directive
        module="core">ErrorDocument</directive> no usa ya dobles
        comillas al principio del argumento para indicar el mensaje de
        texto que tiene que mostrarse. En lugar de esto, se debe poner
        entre comillas todo el mensaje. Por ejemplo,

        <example>
          ErrorDocument 403 "Mensaje
        </example>
        debe sustituirse por

        <example>
          ErrorDocument 403 "Mensaje"
        </example>

        Si el segundo argumento no es una URL o una ruta v&#225;lida a
        un archivo, ser&#225; tratado como un mensaje de texto.
      </li>

      <li>Las directivas <code>AccessConfig</code> y
      <code>ResourceConfig</code> han desaparecido.  Las instancias
      existentes de estas directivas pueden sustituirse por la
      directiva <directive module="core">Include</directive> que tiene
      una funcionalidad equivalente. Si hac&#237;a uso de los valores
      por defecto de esas directivas sin incluirlas en los ficheros de
      configuraci&#243;n, puede que necesite a&#241;adir <code>Include
      conf/access.conf</code> e <code>Include conf/srm.conf</code> a
      su fichero <code>httpd.conf</code>. Para asegurarse de que
      Apache lee el fichero de configuraci&#243;n en el mismo orden
      que asum&#237;an las antiguas directivas, las directivas
      <directive module="core">Include</directive> deben ser
      reemplazadas al final del fichero <code>httpd.conf</code>, con
      la de <code>srm.conf</code> precediendo a la de
      <code>access.conf</code>.</li>

      <li>Las directivas <code>BindAddress</code> y <code>Port</code>
      no existen ya. Las funcionalidades que ofrec&#237;an esas
      directivas est&#225;n ahora cubiertas por la directiva
      <directive module="mpm_common">Listen</directive>, que es mucho
      m&#225;s flexible.</li>

      <li>Otro uso de la directiva <code>Port</code> en Apache 1.3 era
      fijar el n&#250;mero de puerto que se usaba para URLs
      autoreferenciadas. La directiva equivalente en Apache 2.0 es la
      nueva directiva <directive module="core">ServerName</directive>:
      este cambio se ha introducido para permitir la
      especificaci&#243;n del nombre de host <em>y</em> del
      n&#250;mero de puerto para URLs autorreferenciadas en una sola
      directiva.</li>

      <li>La directiva <code>ServerType</code> ha dejado de existir.
      El m&#233;todo usado para servir peticiones est&#225; ahora
      determinado por la selecci&#243;n del M&#243;dulo de
      MultiProcesamiento. Actualmente no hay dise&#241;ado un MPM que
      pueda ser ejecutado por inetd.</li>

      <li>Los m&#243;dulos <code>mod_log_agent</code> y
      <code>mod_log_referer</code> que conten&#237;an las directivas
      <code>AgentLog</code>, <code>RefererLog</code> y
      <code>RefererIgnore</code> han desaparecido. Los logs de agente
      y de referer est&#225;n disponibles todav&#237;a usando la
      directiva <directive
      module="mod_log_config">CustomLog</directive> del m&#243;dulo
      <module>mod_log_config</module>.</li>

      <li>las directivas <code>AddModule</code> y
      <code>ClearModuleList</code> no est&#225;n presentes en la nueva
      versi&#243;n.  Estan directivas se usaban para asegurarse de que
      los m&#243;dulos pudieran activarse en el orden correcto. La
      nueva API de Apache 2.0 permite a los m&#243;dulos especificar
      expl&#237;citamente su orden de activaci&#243;n, eliminando la
      necesidad de estas directivas.</li>

      <li>La directiva <code>FancyIndexing</code> se ha eliminado.  La
      funcionalidad que cubr&#237;a est&#225; ahora disponible a
      trav&#233;s de la opci&#243;n <code>FancyIndexing</code> de la
      directiva <directive
      module="mod_autoindex">IndexOptions</directive>.</li>

      <li>La t&#233;cnica de negociaci&#243;n de contenido MultiViews
      ofrecida por <module>mod_negotiation</module> es ahora m&#225;s
      estricta en su algoritmo de selecci&#243;n de ficheros y solo
      seleccionar&#225; ficheros <em>negociables</em>.  El antiguo
      comportamiento puede restaurarse usando la directiva <directive
      module="mod_mime">MultiviewsMatch</directive>.</li>

    </ul>
  </section>

  <section id="misc">
    <title>Cambios de menor importancia</title>

    <ul>
      <li>El m&#243;dulo <module>mod_auth_digest</module>, que era
      experimental en Apache 1.3, es ahora un m&#243;dulo
      est&#225;ndar.</li>

      <li>El m&#243;dulo <code>mod_mmap_static</code>, que era
      experimental en Apache 1.3, ha sido sustituido por el
      m&#243;dulo <module>mod_file_cache</module>.</li>

      <li>La distribuci&#243;n de Apache ha sido reorganizada por
      completo para que no contenga a partir de ahora el directorio
      independiente <code>src</code>. En su lugar, el c&#243;digo
      fuente se ha organizado a partir del directorio principal de la
      distribuci&#243;n, y las intalaciones del servidor compilado
      deben hecerse en un directorio diferente.</li>
    </ul>
  </section>

  <section id="third-party">
    <title>M&#243;dulos de terceras partes</title>

    <p>La API de Apache 2.0 ha sufrido grandes cambios respecto a la
    versi&#243;n 1.3. Los m&#243;dulos que se dise&#241;aron para la
    API de Apache 1.3 <strong>no</strong> funcionar&#225;n si no se
    hacen las modificaciones necasarias para adaptarlos a Apache 2.0.
    En la <a href="developer/">documentaci&#243;n para
    desarrolladores</a> puede encontrar informaci&#243;n detallada
    sobre este asunto.</p>
  </section>
</manualpage>

<?xml version="1.0"?>
<!DOCTYPE modulesynopsis SYSTEM "../style/modulesynopsis.dtd">
<?xml-stylesheet type="text/xsl" href="../style/manual.en.xsl"?>
<!-- Revision: 1.8.2.10  -->

<!--
 Copyright 2004 The Apache Software Foundation

 Licensed 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.
-->

<modulesynopsis metafile="worker.xml.meta">
<name>worker</name>
<description>M&#243;dulo de MultiProcesamiento que implementa un
servidor web h&#237;brido multihebra-multiproceso</description>
<status>MPM</status>
<sourcefile>worker.c</sourcefile>
<identifier>mpm_worker_module</identifier>

<summary>
    <p>Este M&#243;dulo de MultiProcesamiento (MPM) implementa un
    servidor h&#237;brido multiproceso-multihebra.  Usando hebras para
    atender peticiones, el servidor puede servir un mayor n&#250;mero
    de peticiones con menos recursos de sistema que un servidor basado
    &#250;nicamente en procesos. No obtante, se mantiene casi por
    completo la estabilidad de un servidor basado en procesos
    manteniendo la capacidad multiproceso, pudiendo cada proceso tener
    muchas hebras.</p>

    <p>Las directivas m&#225;s importantes que se usan para controlar
    este MPM son <directive
    module="mpm_common">ThreadsPerChild</directive>, que controla el
    n&#250;mero de hebras que tiene cada proceso hijo y <directive
    module="mpm_common">MaxClients</directive>, que controla el
    n&#250;mero m&#225;ximo de hebras que pueden crearse.</p>
</summary>
<seealso><a href="../bind.html">Especificar las direcciones y los
puertos que usa Apache</a></seealso>

<section id="how-it-works"><title>C&#243;mo funciona</title> <p>Un
    solo proceso de control (el padre) es el responsable de crear los
    procesos hijo. Cada proceso hijo crea un n&#250;mero fijo de
    hebras del servidor de la forma que se especifica en la directiva
    <directive module="mpm_common">ThreadsPerChild</directive>,
    as&#237; como una hebra de escucha que escuchar&#225; si se
    producen peticiones y las pasar&#225; a una hebra del servidor
    para que la procese.</p>

    <p>Apache siempre intenta mantener en reserva cierto n&#250;mero
    de hebras <dfn>de sobra</dfn> o en espera, que est&#225;n
    preparadas para servir peticiones en el momento en que
    lleguen. As&#237;, los clientes no tienen que esperar a que se
    creen nuevas hebras o procesos para que sean atendidas sus
    peticiones. El n&#250;mero de procesos que se crean al principio
    est&#225; determinado por la directiva <directive
    module="mpm_common">StartServers</directive>. Despu&#233;s durante
    el funcionamiento del servidor, Apache calcula el n&#250;mero
    total de hebras en espera entre todos los procesos, y crea o
    elimina procesos para mantener ese n&#250;mero dentro de los
    l&#237;mites especificados en las directivas <directive
    module="mpm_common">MinSpareThreads</directive> y <directive
    module="mpm_common">MaxSpareThreads</directive>. Como este proceso
    est&#225; bastante autorregulado, no es muy habitual que sea
    necesario modificar los valores que estas directivas traen por
    defecto. El n&#250;mero m&#225;ximo de clientes que pueden ser
    servidos simult&#225;neamente (por ejemplo, el n&#250;mero
    m&#225;ximo de hebras entre todos los procesos) est&#225;
    determinado por la directiva <directive
    module="mpm_common">MaxClients</directive>.  El n&#250;mero
    m&#225;ximo de procesos hijo activos est&#225; determinado por el
    valor especificado en la directiva <directive
    module="mpm_common">MaxClients</directive> dividido por el valor
    especificado en la directiva <directive module="mpm_common">
    ThreadsPerChild</directive>.</p>

    <p>Hay dos directivas que establecen l&#237;mites estrictos al
    n&#250;mero de procesos hijo activos y al n&#250;mero de hebras
    del servidor en un proceso hijo, y puede cambiarse solo parando
    completamente el servidor y volviendo a iniciarlo. La directiva
    <directive module="mpm_common">ServerLimit </directive> marca el
    l&#237;mite estricto de procesos hijo activos posibles, y debe ser
    mayor o igual al valor de la directiva <directive
    module="mpm_common">MaxClients</directive> dividido por el valor
    de la directiva <directive module="mpm_common">
    ThreadsPerChild</directive>.  El valor de la directiva <directive
    module="mpm_common">ThreadLimit</directive> es el l&#237;mite
    estricto del n&#250;mero de hebras del servidor, y debe ser mayor
    o igual al valor de la directiva <directive
    module="mpm_common">ThreadsPerChild</directive>.  Si los valores
    de esas directivas no son los que vienen por defecto, deben
    aparecer antes que el resto de directivas del m&#243;dulo
    <module>worker</module>.</p>

    <p>Adem&#225;s del conjunto de procesos hijo activos, puede haber
    otros procesos hijo que est&#225;n terminando pero en los que al
    menos una hebra del servidor est&#225; todav&#237;a tratando una
    conexi&#243;n con un cliente.  Puede haber hasta <directive
    module="mpm_common">MaxClients</directive> procesos terminando,
    aunque el n&#250;mero real de estos procesos que puede esperarse
    es mucho menor. Este comportamiento puede evitarse desactivando la
    eliminaci&#243;n individual de procesos hijo, lo que se hace de la
    siguiente manera:</p>

    <ul>
      <li>fijar el valor de la directiva <directive module="mpm_common">
      MaxRequestsPerChild</directive> a cero</li>

      <li>fijar el valor de la directiva <directive
      module="mpm_common"> MaxSpareThreads</directive> al mismo valor
      que la directiva <directive
      module="mpm_common">MaxClients</directive></li>
    </ul>

    <p>Una configuraci&#243;n t&#237;pica del sistema de control de
    procesos y hebras del m&#243;dulo de MPM <module>worker</module>
    prodr&#237;a ser como sigue:</p>

    <example>
      ServerLimit         16<br />
      StartServers         2<br />
      MaxClients         150<br />
      MinSpareThreads     25<br />
      MaxSpareThreads     75<br />
      ThreadsPerChild     25
    </example>

    <p>Mientras que el proceso padre se inicia con privilegios de
    usuario <code>root</code> en Unix para usar el puerto de escucha
    80, los procesos hijo y las hebras se inician con menores
    privilegios de usuario. Las directivas <directive
    module="mpm_common">User</directive> y <directive
    module="mpm_common">Group</directive> se usan para determinar los
    privilegios con los que se iniciar&#225;n los procesos hijo. Los
    procesos hijo deben ser capaces de leer los contenidos que van a
    servir, pero solo los permisos extrictamente necesarios para
    cumplir su tarea. Adem&#225;s. a menos que se use <a
    href="../suexec.html">suexec</a>, los privilegios fijados en estas
    directivas son los que que van a heredar los scripts CGI.</p>

    <p>La directiva <directive
    module="mpm_common">MaxRequestsPerChild</directive> controla con
    qu&#233; frecuencia el servidor recicla los procesos eliminando
    los antiguos y creando nuevos.</p>
</section>

<directivesynopsis location="mpm_common"><name>AcceptMutex</name>
</directivesynopsis>
<directivesynopsis location="mpm_common"><name>CoreDumpDirectory</name>
</directivesynopsis>
<directivesynopsis location="mpm_common"><name>EnableExceptionHook</name>
</directivesynopsis>
<directivesynopsis location="mpm_common"><name>Group</name>
</directivesynopsis>
<directivesynopsis location="mpm_common"><name>PidFile</name>
</directivesynopsis>
<directivesynopsis location="mpm_common"><name>Listen</name>
</directivesynopsis>
<directivesynopsis location="mpm_common"><name>ListenBacklog</name>
</directivesynopsis>
<directivesynopsis location="mpm_common"><name>LockFile</name>
</directivesynopsis>
<directivesynopsis location="mpm_common"><name>MaxClients</name>
</directivesynopsis>
<directivesynopsis location="mpm_common"><name>MaxMemFree</name>
</directivesynopsis>
<directivesynopsis location="mpm_common"><name>MaxRequestsPerChild</name>
</directivesynopsis>
<directivesynopsis location="mpm_common"><name>MaxSpareThreads</name>
</directivesynopsis>
<directivesynopsis location="mpm_common"><name>MinSpareThreads</name>
</directivesynopsis>
<directivesynopsis location="mpm_common"><name>ScoreBoardFile</name>
</directivesynopsis>
<directivesynopsis location="mpm_common"><name>SendBufferSize</name>
</directivesynopsis>
<directivesynopsis location="mpm_common"><name>ServerLimit</name>
</directivesynopsis>
<directivesynopsis location="mpm_common"><name>StartServers</name>
</directivesynopsis>
<directivesynopsis location="mpm_common"><name>ThreadLimit</name>
</directivesynopsis>
<directivesynopsis location="mpm_common"><name>ThreadsPerChild</name>
</directivesynopsis>
<directivesynopsis location="mpm_common"><name>User</name>
</directivesynopsis>

</modulesynopsis>


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to