]> granicus.if.org Git - apache/blob - docs/manual/handler.xml.es
Help doc writer to spot places where:
[apache] / docs / manual / handler.xml.es
1 <?xml version="1.0" encoding="UTF-8" ?>
2 <!DOCTYPE manualpage SYSTEM "./style/manualpage.dtd">
3 <?xml-stylesheet type="text/xsl" href="./style/manual.es.xsl"?>
4 <!-- English Revision: 1673945  -->
5 <!-- Translated by Luis Gil de Bernabé Pfeiffer lgilbernabe[AT]apache.org -->
6 <!-- Reviewed by Sergio Ramos-->
7
8 <!--
9  Licensed to the Apache Software Foundation (ASF) under one or more
10  contributor license agreements.  See the NOTICE file distributed with
11  this work for additional information regarding copyright ownership.
12  The ASF licenses this file to You under the Apache License, Version 2.0
13  (the "License"); you may not use this file except in compliance with
14  the License.  You may obtain a copy of the License at
15
16      http://www.apache.org/licenses/LICENSE-2.0
17
18  Unless required by applicable law or agreed to in writing, software
19  distributed under the License is distributed on an "AS IS" BASIS,
20  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
21  See the License for the specific language governing permissions and
22  limitations under the License.
23 -->
24
25 <manualpage metafile="handler.xml.meta">
26
27   <title>Uso de los Handlers en Apache</title>
28
29   <summary>
30     <p>Este documento describe el uso de los Handlers en Apache.</p>
31   </summary>
32
33   <section id="definition">
34     <title>¿Qué es un Handler?</title>
35     <related>
36       <modulelist>
37         <module>mod_actions</module>
38         <module>mod_asis</module>
39         <module>mod_cgi</module>
40         <module>mod_imagemap</module>
41         <module>mod_info</module>
42         <module>mod_mime</module>
43         <module>mod_negotiation</module>
44         <module>mod_status</module>
45      </modulelist>
46       <directivelist>
47         <directive module="mod_actions">Action</directive>
48         <directive module="mod_mime">AddHandler</directive>
49         <directive module="mod_mime">RemoveHandler</directive>
50         <directive module="core">SetHandler</directive>
51       </directivelist>
52     </related>
53
54
55     <p>Un "handler" es una representación interna de Apache de
56     una acción que se va a ejecutar cuando hay una llamada a un
57     fichero. Generalmente, los ficheros tienen handlers
58     implícitos, basados en el tipo de fichero de que se
59     trata. Normalmente, todos los ficheros son simplemente servidos
60     por el servidor, pero algunos tipos de ficheros se tratan de forma
61     diferente.</p>
62
63     <p>Handlers pueden ser usados de manera explicita,
64      basándose en la extensión del fichero o en
65     la ubicación en la que esté, se pueden especificar handlers
66     sin tener en cuenta el tipo de fichero que se trate. Esto es
67     una ventaja por dos razones. Primero, es una solución
68     más elegante. Segundo, porque a un fichero se le pueden
69     asignar tanto un tipo <strong>como</strong> un handler. (Consulte
70     también la sección <a
71     href="mod/mod_mime.html#multipleext">Ficheros y extensiones
72     múltiples</a>.)</p>
73
74     <p>Los Handlers pueden tanto ser compilados con el servidor
75     como incluidos en un módulo, o añadidos con la
76     directiva <directive module="mod_actions">Action</directive>. Los
77     handlers que vienen incluidos en el core con el servidor de la distribución
78     estándar de Apache son:</p>
79
80     <ul>
81       <li><strong>default-handler</strong>: Envía el fichero
82       usando el <code>default_handler()</code>, que es el handler
83       usado por defecto para tratar contenido
84       estático. (core)</li>
85
86       <li><strong>send-as-is</strong>: Envía el fichero con
87       cabeceras HTTP tal y como es. (<module>mod_asis</module>)</li>
88
89       <li><strong>cgi-script</strong>: Trata el fichero como un sript
90       CGI. (<module>mod_cgi</module>)</li>
91
92       <li><strong>imap-file</strong>: Trata el fichero como un mapa de
93       imágenes. (<module>mod_imagemap</module>)</li>
94
95       <li><strong>server-info</strong>: Extrae la información de
96       configuración del
97       servidor. (<module>mod_info</module>)</li>
98
99       <li><strong>server-status</strong>: Extrae el informe del estado
100       del servidor. (<module>mod_status</module>)</li>
101
102       <li><strong>type-map</strong>: Trata el fichero como una
103       correspondencia de tipos para la negociación de contenidos.
104       (<module>mod_negotiation</module>)</li> 
105     </ul> 
106   </section>
107     
108     <section id="examples"> 
109       <title>Ejemplos</title>
110
111       <section id="example1">
112       <title>Modificar contenido estático usando un script
113       CGI</title>
114
115       <p>Las siguientes directivas hacen que cuando haya una
116       petición de ficheros con la extensión
117       <code>html</code> se lance el script CGI
118       <code>footer.pl</code>.</p>
119
120       <example>
121         Action add-footer /cgi-bin/footer.pl<br/>
122         AddHandler add-footer .html
123       </example>
124
125       <p>En este caso, el script CGI es el responsable de enviar el
126       documento originalmente solicitado (contenido en la variable de
127       entorno <code>PATH_TRANSLATED</code>) y de hacer cualquier
128       modificación o añadido deseado.</p>
129
130     </section>
131     <section id="example2">
132       <title>Archivos con cabeceras HTTP</title>
133
134       <p>Las siguientes directivas activan el handler
135       <code>send-as-is</code>, que se usa para ficheros que contienen
136       sus propias cabeceras HTTP. Todos los archivos en el directorio
137       <code>/web/htdocs/asis/</code> serán procesados por el
138       handler <code>send-as-is</code>, sin tener en cuenta su
139       extension.</p>
140
141       <highlight language="config">
142 &lt;Directory "/web/htdocs/asis"&gt;
143     SetHandler send-as-is
144 &lt;/Directory&gt;
145       </highlight>
146
147     </section>
148   </section>
149   <section id="programmer">
150     <title>Nota para programadores</title>
151
152     <p>Para implementar las funcionalidades de los handlers, se ha
153     hecho un añadido a la <a href="developer/API.html">API de
154     Apache</a> que puede que quiera usar. Para ser más
155     específicos, se ha añadido un nuevo registro a la
156     estructura <code>request_rec</code>:</p>
157
158     <highlight language="c">
159       char *handler
160     </highlight>
161
162     <p>Si quiere que su módulo llame a un handler , solo tiene
163     que añadir <code>r-&gt;handler</code> al nombre del handler
164     en cualquier momento antes de la fase <code>invoke_handler</code>
165     de la petición. Los handlers se implementan siempre como se
166     hacía antes, aunque usando el nombre del handler en vez de un
167     tipo de contenido. Aunque no es de obligado cumplimiento, la
168     convención de nombres para los handlers es que se usen
169     palabras separadas por guiones, sin barras, de manera que no se
170     invada el media type name-space.</p>
171   </section>
172 </manualpage>
173
174
175
176
177
178