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 <meta content="text/html; charset=ISO-8859-1" http-equiv="Content-Type" />
6 XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
7 This file is generated from xml source: DO NOT EDIT
8 XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
10 <title>Uso de los Handlers en Apache - Servidor HTTP Apache Versión 2.5</title>
11 <link href="./style/css/manual.css" rel="stylesheet" media="all" type="text/css" title="Main stylesheet" />
12 <link href="./style/css/manual-loose-100pc.css" rel="alternate stylesheet" media="all" type="text/css" title="No Sidebar - Default font size" />
13 <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" />
14 <script src="./style/scripts/prettify.min.js" type="text/javascript">
17 <link href="./images/favicon.ico" rel="shortcut icon" /></head>
18 <body id="manual-page"><div id="page-header">
19 <p class="menu"><a href="./mod/">Módulos</a> | <a href="./mod/quickreference.html">Directivas</a> | <a href="http://wiki.apache.org/httpd/FAQ">Preguntas Frecuentes</a> | <a href="./glossary.html">Glosario</a> | <a href="./sitemap.html">Mapa del sitio web</a></p>
20 <p class="apache">Versión 2.5 del Servidor HTTP Apache</p>
21 <img alt="" src="./images/feather.gif" /></div>
22 <div class="up"><a href="./"><img title="<-" alt="<-" src="./images/left.gif" /></a></div>
24 <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>
26 <p><span>Idiomas disponibles: </span><a href="./en/handler.html" hreflang="en" rel="alternate" title="English"> en </a> |
27 <a href="./es/handler.html" title="Español"> es </a> |
28 <a href="./fr/handler.html" hreflang="fr" rel="alternate" title="Français"> fr </a> |
29 <a href="./ja/handler.html" hreflang="ja" rel="alternate" title="Japanese"> ja </a> |
30 <a href="./ko/handler.html" hreflang="ko" rel="alternate" title="Korean"> ko </a> |
31 <a href="./tr/handler.html" hreflang="tr" rel="alternate" title="Türkçe"> tr </a> |
32 <a href="./zh-cn/handler.html" hreflang="zh-cn" rel="alternate" title="Simplified Chinese"> zh-cn </a></p>
34 <div class="outofdate">Esta traducción podría estar
35 obsoleta. Consulte la versión en inglés de la
36 documentación para comprobar si se han producido cambios
39 <p>Este documento describe el uso de los Handlers en Apache.</p>
41 <div id="quickview"><ul id="toc"><li><img alt="" src="./images/down.gif" /> <a href="#definition">¿Qué es un Handler?</a></li>
42 <li><img alt="" src="./images/down.gif" /> <a href="#examples">Ejemplos</a></li>
43 <li><img alt="" src="./images/down.gif" /> <a href="#programmer">Nota para programadores</a></li>
44 </ul><ul class="seealso"><li><a href="#comments_section">Comentarios</a></li></ul></div>
45 <div class="top"><a href="#page-header"><img alt="top" src="./images/up.gif" /></a></div>
47 <h2><a name="definition" id="definition">¿Qué es un Handler?</a></h2>
49 <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>
52 <p>Un "handler" es una representación interna de Apache de
53 una acción que se va a ejecutar cuando hay una llamada a un
54 fichero. Generalmente, los ficheros tienen handlers
55 implícitos, basados en el tipo de fichero de que se
56 trata. Normalmente, todos los ficheros son simplemente servidos
57 por el servidor, pero algunos tipos de ficheros se tratan de forma
60 <p>Apache 1.1 añade la posibilidad de usar handlers
61 explicitamente. Basándose en la extension del fichero o en
62 la ubicación en la que este, se pueden especificar handlers
63 sin tener en cuenta el tipo de fichero de que se trate. Esto es
64 una ventaja por dos razones. Primero, es una solución
65 más elegante. Segundo, porque a un fichero se le pueden
66 asignar tanto un tipo <strong>como</strong> un handler. (Consulte
67 también la sección <a href="mod/mod_mime.html#multipleext">Ficheros y extensiones
70 <p>Los Handlers pueden ser tanto ser compilados con el servidor
71 como incluidos en un módulo, como añadidos con la
72 directiva <code class="directive"><a href="./mod/mod_actions.html#action">Action</a></code>. Los
73 handlers compilados con el servidor de la distribución
74 estándar de Apache son:</p>
77 <li><strong>default-handler</strong>: Envía el fichero
78 usando el <code>default_handler()</code>, que es el handler
79 usado por defecto para tratar contenido
82 <li><strong>send-as-is</strong>: Envía el fichero con
83 cabeceras HTTP tal y como es. (<code class="module"><a href="./mod/mod_asis.html">mod_asis</a></code>)</li>
85 <li><strong>cgi-script</strong>: Trata el fichero como un sript
86 CGI. (<code class="module"><a href="./mod/mod_cgi.html">mod_cgi</a></code>)</li>
88 <li><strong>imap-file</strong>: Trata el fichero como un mapa de
89 imágenes. (<code class="module"><a href="./mod/mod_imagemap.html">mod_imagemap</a></code>)</li>
91 <li><strong>server-info</strong>: Extrae la información de
93 servidor. (<code class="module"><a href="./mod/mod_info.html">mod_info</a></code>)</li>
95 <li><strong>server-status</strong>: Extrae el informe de estado
96 del servidor. (<code class="module"><a href="./mod/mod_status.html">mod_status</a></code>)</li>
98 <li><strong>type-map</strong>: Trata el fichero como una
99 correspondencia de tipos para la negociación de contenidos.
100 (<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>
101 <div class="section">
102 <h2><a name="examples" id="examples">Ejemplos</a></h2>
104 <h3><a name="example1" id="example1">Modificar contenido estático usando un script
108 <p>Las siguientes directivas hacen que cuando haya una
109 petición de ficheros con la extensión
110 <code>html</code> se lance el script CGI
111 <code>footer.pl</code>.</p>
113 <div class="example"><p><code>
114 Action add-footer /cgi-bin/footer.pl<br />
115 AddHandler add-footer .html
118 <p>En este caso, el script CGI es el responsable de enviar el
119 documento originalmente solicitado (contenido en la variable de
120 entorno <code>PATH_TRANSLATED</code>) y de hacer cualquier
121 modificación o añadido deseado.</p>
124 <h3><a name="example2" id="example2">Archivos con cabaceras HTTP</a></h3>
127 <p>Las siguientes directivas activan el handler
128 <code>send-as-is</code>, que se usa para ficheros que contienen
129 sus propias cabeceras HTTP. Todos los archivos en el directorio
130 <code>/web/htdocs/asis/</code> serán procesados por el
131 handler <code>send-as-is</code>, sin tener en cuenta su
134 <div class="example"><p><code>
135 <Directory /web/htdocs/asis><br />
136 SetHandler send-as-is<br />
141 </div><div class="top"><a href="#page-header"><img alt="top" src="./images/up.gif" /></a></div>
142 <div class="section">
143 <h2><a name="programmer" id="programmer">Nota para programadores</a></h2>
146 <p>Para implementar las funcionalidades de los handlers, se ha
147 hecho un añadido a la <a href="developer/API.html">API de
148 Apache</a> que puede que quiera usar. Para ser más
149 específicos, se ha añadido un nuevo registro a la
150 estructura <code>request_rec</code>:</p>
152 <div class="example"><p><code>
156 <p>Si quiere que su módulo llame a un handler , solo tiene
157 que añadir <code>r->handler</code> al nombre del handler
158 en cualquier momento antes de la fase <code>invoke_handler</code>
159 de la petición. Los handlers se implementan siempre como se
160 hacía antes, aunque usando el nombre del handler en vez de un
161 tipo de contenido. Aunque no es de obligado cumplimiento, la
162 convención de nombres para los handlers es que se usen
163 palabras separadas por guiones, sin barras, de manera que no se
164 invada el media type name-space.</p>
166 <div class="bottomlang">
167 <p><span>Idiomas disponibles: </span><a href="./en/handler.html" hreflang="en" rel="alternate" title="English"> en </a> |
168 <a href="./es/handler.html" title="Español"> es </a> |
169 <a href="./fr/handler.html" hreflang="fr" rel="alternate" title="Français"> fr </a> |
170 <a href="./ja/handler.html" hreflang="ja" rel="alternate" title="Japanese"> ja </a> |
171 <a href="./ko/handler.html" hreflang="ko" rel="alternate" title="Korean"> ko </a> |
172 <a href="./tr/handler.html" hreflang="tr" rel="alternate" title="Türkçe"> tr </a> |
173 <a href="./zh-cn/handler.html" hreflang="zh-cn" rel="alternate" title="Simplified Chinese"> zh-cn </a></p>
174 </div><div class="top"><a href="#page-header"><img src="./images/up.gif" alt="top" /></a></div><div class="section"><h2><a id="comments_section" name="comments_section">Comentarios</a></h2><div class="warning"><strong>Notice:</strong><br />This is not a Q&A section. Comments placed here should be pointed towards suggestions on improving the documentation or server, and may be removed again by our moderators if they are either implemented or considered invalid/off-topic. Questions on how to manage the Apache HTTP Server should be directed at either our IRC channel, #httpd, on Freenode, or sent to our <a href="http://httpd.apache.org/lists.html">mailing lists</a>.</div>
175 <script type="text/javascript"><!--//--><![CDATA[//><!--
176 var comments_shortname = 'httpd';
177 var comments_identifier = 'http://httpd.apache.org/docs/trunk/handler.html';
179 if (w.location.hostname.toLowerCase() == "httpd.apache.org") {
180 d.write('<div id="comments_thread"><\/div>');
181 var s = d.createElement('script');
182 s.type = 'text/javascript';
184 s.src = 'https://comments.apache.org/show_comments.lua?site=' + comments_shortname + '&page=' + comments_identifier;
185 (d.getElementsByTagName('head')[0] || d.getElementsByTagName('body')[0]).appendChild(s);
188 d.write('<div id="comments_thread">Comments are disabled for this page at the moment.<\/div>');
190 })(window, document);
191 //--><!]]></script></div><div id="footer">
192 <p class="apache">Copyright 2016 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>
193 <p class="menu"><a href="./mod/">Módulos</a> | <a href="./mod/quickreference.html">Directivas</a> | <a href="http://wiki.apache.org/httpd/FAQ">Preguntas Frecuentes</a> | <a href="./glossary.html">Glosario</a> | <a href="./sitemap.html">Mapa del sitio web</a></p></div><script type="text/javascript"><!--//--><![CDATA[//><!--
194 if (typeof(prettyPrint) !== 'undefined') {