1 <?xml version="1.0" encoding="ISO-8859-1"?>
2 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
3 <html xmlns="http://www.w3.org/1999/xhtml" lang="es" xml:lang="es"><head><!--
4 XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
5 This file is generated from xml source: DO NOT EDIT
6 XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
8 <title>Uso de los Handlers en Apache - Servidor HTTP Apache</title>
9 <link href="./style/css/manual.css" rel="stylesheet" media="all" type="text/css" title="Main stylesheet" />
10 <link href="./style/css/manual-loose-100pc.css" rel="alternate stylesheet" media="all" type="text/css" title="No Sidebar - Default font size" />
11 <link href="./style/css/manual-print.css" rel="stylesheet" media="print" type="text/css" /><link rel="stylesheet" type="text/css" href="./style/css/prettify.css" />
12 <script src="./style/scripts/prettify.js" type="text/javascript">
15 <link href="./images/favicon.ico" rel="shortcut icon" /></head>
16 <body id="manual-page"><div id="page-header">
17 <p class="menu"><a href="./mod/">Módulos</a> | <a href="./mod/directives.html">Directivas</a> | <a href="./faq/">Preguntas Frecuentes</a> | <a href="./glossary.html">Glosario</a> | <a href="./sitemap.html">Mapa de este sitio web</a></p>
18 <p class="apache">Versión 2.5 del Servidor HTTP Apache</p>
19 <img alt="" src="./images/feather.gif" /></div>
20 <div class="up"><a href="./"><img title="<-" alt="<-" src="./images/left.gif" /></a></div>
22 <a href="http://www.apache.org/">Apache</a> > <a href="http://httpd.apache.org/">Servidor HTTP</a> > <a href="http://httpd.apache.org/docs/">Documentación</a> > <a href="./">Versión 2.5</a></div><div id="page-content"><div id="preamble"><h1>Uso de los Handlers en Apache</h1>
24 <p><span>Idiomas disponibles: </span><a href="./en/handler.html" hreflang="en" rel="alternate" title="English"> en </a> |
25 <a href="./es/handler.html" title="Español"> es </a> |
26 <a href="./fr/handler.html" hreflang="fr" rel="alternate" title="Français"> fr </a> |
27 <a href="./ja/handler.html" hreflang="ja" rel="alternate" title="Japanese"> ja </a> |
28 <a href="./ko/handler.html" hreflang="ko" rel="alternate" title="Korean"> ko </a> |
29 <a href="./tr/handler.html" hreflang="tr" rel="alternate" title="Türkçe"> tr </a> |
30 <a href="./zh-cn/handler.html" hreflang="zh-cn" rel="alternate" title="Simplified Chinese"> zh-cn </a></p>
32 <div class="outofdate">Esta traducción podría estar
33 obsoleta. Consulte la versión en inglés de la
34 documentación para comprobar si se han producido cambios
37 <p>Este documento describe el uso de los Handlers en Apache.</p>
39 <div id="quickview"><ul id="toc"><li><img alt="" src="./images/down.gif" /> <a href="#definition">¿Qué es un Handler?</a></li>
40 <li><img alt="" src="./images/down.gif" /> <a href="#examples">Ejemplos</a></li>
41 <li><img alt="" src="./images/down.gif" /> <a href="#programmer">Nota para programadores</a></li>
43 <div class="top"><a href="#page-header"><img alt="top" src="./images/up.gif" /></a></div>
45 <h2><a name="definition" id="definition">¿Qué es un Handler?</a></h2>
47 <table class="related"><tr><th>Módulos Relacionados</th><th>Directivas Relacionadas</th></tr><tr><td><ul><li><code class="module"><a href="./mod/mod_actions.html">mod_actions</a></code></li><li><code class="module"><a href="./mod/mod_asis.html">mod_asis</a></code></li><li><code class="module"><a href="./mod/mod_cgi.html">mod_cgi</a></code></li><li><code class="module"><a href="./mod/mod_imagemap.html">mod_imagemap</a></code></li><li><code class="module"><a href="./mod/mod_info.html">mod_info</a></code></li><li><code class="module"><a href="./mod/mod_mime.html">mod_mime</a></code></li><li><code class="module"><a href="./mod/mod_negotiation.html">mod_negotiation</a></code></li><li><code class="module"><a href="./mod/mod_status.html">mod_status</a></code></li></ul></td><td><ul><li><code class="directive"><a href="./mod/mod_actions.html#action">Action</a></code></li><li><code class="directive"><a href="./mod/mod_mime.html#addhandler">AddHandler</a></code></li><li><code class="directive"><a href="./mod/mod_mime.html#removehandler">RemoveHandler</a></code></li><li><code class="directive"><a href="./mod/core.html#sethandler">SetHandler</a></code></li></ul></td></tr></table>
50 <p>Un "handler" es una representación interna de Apache de
51 una acción que se va a ejecutar cuando hay una llamada a un
52 fichero. Generalmente, los ficheros tienen handlers
53 implícitos, basados en el tipo de fichero de que se
54 trata. Normalmente, todos los ficheros son simplemente servidos
55 por el servidor, pero algunos tipos de ficheros se tratan de forma
58 <p>Apache 1.1 añade la posibilidad de usar handlers
59 explicitamente. Basándose en la extension del fichero o en
60 la ubicación en la que este, se pueden especificar handlers
61 sin tener en cuenta el tipo de fichero de que se trate. Esto es
62 una ventaja por dos razones. Primero, es una solución
63 más elegante. Segundo, porque a un fichero se le pueden
64 asignar tanto un tipo <strong>como</strong> un handler. (Consulte
65 también la sección <a href="mod/mod_mime.html#multipleext">Ficheros y extensiones
68 <p>Los Handlers pueden ser tanto ser compilados con el servidor
69 como incluidos en un módulo, como añadidos con la
70 directiva <code class="directive"><a href="./mod/mod_actions.html#action">Action</a></code>. Los
71 handlers compilados con el servidor de la distribución
72 estándar de Apache son:</p>
75 <li><strong>default-handler</strong>: Envía el fichero
76 usando el <code>default_handler()</code>, que es el handler
77 usado por defecto para tratar contenido
80 <li><strong>send-as-is</strong>: Envía el fichero con
81 cabeceras HTTP tal y como es. (<code class="module"><a href="./mod/mod_asis.html">mod_asis</a></code>)</li>
83 <li><strong>cgi-script</strong>: Trata el fichero como un sript
84 CGI. (<code class="module"><a href="./mod/mod_cgi.html">mod_cgi</a></code>)</li>
86 <li><strong>imap-file</strong>: Trata el fichero como un mapa de
87 imágenes. (<code class="module"><a href="./mod/mod_imagemap.html">mod_imagemap</a></code>)</li>
89 <li><strong>server-info</strong>: Extrae la información de
91 servidor. (<code class="module"><a href="./mod/mod_info.html">mod_info</a></code>)</li>
93 <li><strong>server-status</strong>: Extrae el informe de estado
94 del servidor. (<code class="module"><a href="./mod/mod_status.html">mod_status</a></code>)</li>
96 <li><strong>type-map</strong>: Trata el fichero como una
97 correspondencia de tipos para la negociación de contenidos.
98 (<code class="module"><a href="./mod/mod_negotiation.html">mod_negotiation</a></code>)</li> </ul> </div><div class="top"><a href="#page-header"><img alt="top" src="./images/up.gif" /></a></div>
100 <h2><a name="examples" id="examples">Ejemplos</a></h2>
102 <h3><a name="example1" id="example1">Modificar contenido estático usando un script
106 <p>Las siguientes directivas hacen que cuando haya una
107 petición de ficheros con la extensión
108 <code>html</code> se lance el script CGI
109 <code>footer.pl</code>.</p>
111 <div class="example"><p><code>
112 Action add-footer /cgi-bin/footer.pl<br />
113 AddHandler add-footer .html
116 <p>En este caso, el script CGI es el responsable de enviar el
117 documento originalmente solicitado (contenido en la variable de
118 entorno <code>PATH_TRANSLATED</code>) y de hacer cualquier
119 modificación o añadido deseado.</p>
122 <h3><a name="example2" id="example2">Archivos con cabaceras HTTP</a></h3>
125 <p>Las siguientes directivas activan el handler
126 <code>send-as-is</code>, que se usa para ficheros que contienen
127 sus propias cabeceras HTTP. Todos los archivos en el directorio
128 <code>/web/htdocs/asis/</code> serán procesados por el
129 handler <code>send-as-is</code>, sin tener en cuenta su
132 <div class="example"><p><code>
133 <Directory /web/htdocs/asis><br />
134 SetHandler send-as-is<br />
139 </div><div class="top"><a href="#page-header"><img alt="top" src="./images/up.gif" /></a></div>
140 <div class="section">
141 <h2><a name="programmer" id="programmer">Nota para programadores</a></h2>
144 <p>Para implementar las funcionalidades de los handlers, se ha
145 hecho un añadido a la <a href="developer/API.html">API de
146 Apache</a> que puede que quiera usar. Para ser más
147 específicos, se ha añadido un nuevo registro a la
148 estructura <code>request_rec</code>:</p>
150 <div class="example"><p><code>
154 <p>Si quiere que su módulo llame a un handler , solo tiene
155 que añadir <code>r->handler</code> al nombre del handler
156 en cualquier momento antes de la fase <code>invoke_handler</code>
157 de la petición. Los handlers se implementan siempre como se
158 hacía antes, aunque usando el nombre del handler en vez de un
159 tipo de contenido. Aunque no es de obligado cumplimiento, la
160 convención de nombres para los handlers es que se usen
161 palabras separadas por guiones, sin barras, de manera que no se
162 invada el media type name-space.</p>
164 <div class="bottomlang">
165 <p><span>Idiomas disponibles: </span><a href="./en/handler.html" hreflang="en" rel="alternate" title="English"> en </a> |
166 <a href="./es/handler.html" title="Español"> es </a> |
167 <a href="./fr/handler.html" hreflang="fr" rel="alternate" title="Français"> fr </a> |
168 <a href="./ja/handler.html" hreflang="ja" rel="alternate" title="Japanese"> ja </a> |
169 <a href="./ko/handler.html" hreflang="ko" rel="alternate" title="Korean"> ko </a> |
170 <a href="./tr/handler.html" hreflang="tr" rel="alternate" title="Türkçe"> tr </a> |
171 <a href="./zh-cn/handler.html" hreflang="zh-cn" rel="alternate" title="Simplified Chinese"> zh-cn </a></p>
172 </div><div id="footer">
173 <p class="apache">Copyright 2012 The Apache Software Foundation.<br />Licencia bajo los términos de la <a href="http://www.apache.org/licenses/LICENSE-2.0">Apache License, Version 2.0</a>.</p>
174 <p class="menu"><a href="./mod/">Módulos</a> | <a href="./mod/directives.html">Directivas</a> | <a href="./faq/">Preguntas Frecuentes</a> | <a href="./glossary.html">Glosario</a> | <a href="./sitemap.html">Mapa de este sitio web</a></p></div><script type="text/javascript">