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>Filtros - Servidor Apache HTTP Versión 2.4</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/directives.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.4 del Servidor HTTP Apache</p>
21 <img alt="" src="./images/feather.png" /></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.4</a></div><div id="page-content"><div id="preamble"><h1>Filtros</h1>
26 <p><span>Idiomas disponibles: </span><a href="./en/filter.html" hreflang="en" rel="alternate" title="English"> en </a> |
27 <a href="./es/filter.html" title="Español"> es </a> |
28 <a href="./fr/filter.html" hreflang="fr" rel="alternate" title="Français"> fr </a> |
29 <a href="./ja/filter.html" hreflang="ja" rel="alternate" title="Japanese"> ja </a> |
30 <a href="./ko/filter.html" hreflang="ko" rel="alternate" title="Korean"> ko </a> |
31 <a href="./tr/filter.html" hreflang="tr" rel="alternate" title="Türkçe"> tr </a></p>
34 <p>Este documento describe cómo usar filtros en Apache.</p>
36 <div id="quickview"><a href="https://www.apache.org/foundation/contributing.html" class="badge"><img src="https://www.apache.org/images/SupportApache-small.png" alt="Support Apache!" /></a><ul id="toc"><li><img alt="" src="./images/down.gif" /> <a href="#intro">Filtros en Apache 2</a></li>
37 <li><img alt="" src="./images/down.gif" /> <a href="#smart">Filtrado Inteligente</a></li>
38 <li><img alt="" src="./images/down.gif" /> <a href="#service">Filtros expuestos como un servicio HTTP</a></li>
39 <li><img alt="" src="./images/down.gif" /> <a href="#using">Usando los Filtros</a></li>
40 </ul><h3>Consulte también</h3><ul class="seealso"><li><a href="#comments_section">Comentarios</a></li></ul></div>
41 <div class="top"><a href="#page-header"><img alt="top" src="./images/up.gif" /></a></div>
43 <h2><a name="intro" id="intro">Filtros en Apache 2</a></h2>
45 <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_filter.html">mod_filter</a></code></li><li><code class="module"><a href="./mod/mod_deflate.html">mod_deflate</a></code></li><li><code class="module"><a href="./mod/mod_ext_filter.html">mod_ext_filter</a></code></li><li><code class="module"><a href="./mod/mod_include.html">mod_include</a></code></li><li><code class="module"><a href="./mod/mod_charset_lite.html">mod_charset_lite</a></code></li><li><code class="module"><a href="./mod/mod_reflector.html">mod_reflector</a></code></li><li><code class="module"><a href="./mod/mod_buffer.html">mod_buffer</a></code></li><li><code class="module"><a href="./mod/mod_data.html">mod_data</a></code></li><li><code class="module"><a href="./mod/mod_ratelimit.html">mod_ratelimit</a></code></li><li><code class="module"><a href="./mod/mod_reqtimeout.html">mod_reqtimeout</a></code></li><li><code class="module"><a href="./mod/mod_request.html">mod_request</a></code></li><li><code class="module"><a href="./mod/mod_sed.html">mod_sed</a></code></li><li><code class="module"><a href="./mod/mod_substitute.html">mod_substitute</a></code></li><li><code class="module"><a href="./mod/mod_xml2enc.html">mod_xml2enc</a></code></li><li><code class="module"><a href="./mod/mod_proxy_html.html">mod_proxy_html</a></code></li><li><code class="module"><a href="./mod/mod_policy.html">mod_policy</a></code></li></ul></td><td><ul><li><code class="directive"><a href="./mod/mod_filter.html#filterchain">FilterChain</a></code></li><li><code class="directive"><a href="./mod/mod_filter.html#filterdeclare">FilterDeclare</a></code></li><li><code class="directive"><a href="./mod/mod_filter.html#filterprotocol">FilterProtocol</a></code></li><li><code class="directive"><a href="./mod/mod_filter.html#filterprovider">FilterProvider</a></code></li><li><code class="directive"><a href="./mod/mod_mime.html#addinputfilter">AddInputFilter</a></code></li><li><code class="directive"><a href="./mod/mod_mime.html#addoutputfilter">AddOutputFilter</a></code></li><li><code class="directive"><a href="./mod/mod_mime.html#removeinputfilter">RemoveInputFilter</a></code></li><li><code class="directive"><a href="./mod/mod_mime.html#removeoutputfilter">RemoveOutputFilter</a></code></li><li><code class="directive"><a href="./mod/mod_reflector.html#reflectorheader">ReflectorHeader</a></code></li><li><code class="directive"><a href="./mod/mod_ext_filter.html#extfilterdefine">ExtFilterDefine</a></code></li><li><code class="directive"><a href="./mod/mod_ext_filter.html#extfilteroptions">ExtFilterOptions</a></code></li><li><code class="directive"><a href="./mod/core.html#setinputfilter">SetInputFilter</a></code></li><li><code class="directive"><a href="./mod/core.html#setoutputfilter">SetOutputFilter</a></code></li></ul></td></tr></table>
47 <p>La cadena de filtrado está disponible en Apache 2.0 y superiores.
48 Un <em>filtro</em> es un proceso que se aplica a los datos que
49 se reciben o se envían por el servidor. Los datos enviados
50 por los clientes al servidor son procesados por <em>filtros de
51 entrada</em> mientras que los datos enviados por el servidor se
52 procesan por los <em>filtros de salida</em>. A los datos se les
53 pueden aplicar varios filtros, y el orden en que se aplica cada
54 filtro puede especificarse explícitamente.
55 Todo este proceso es independiente de las tradicionales fase de
58 <img src="images/filter_arch.png" width="569" height="392" alt="Filters can be chained, in a Data Axis orthogonal to request processing" />
60 <p>Algunos ejemplos de filtrado en la distribución estándar de Apache son:</p>
62 <li><code class="module"><a href="./mod/mod_include.html">mod_include</a></code>, implementa server-side includes (SSI).</li>
63 <li><code class="module"><a href="./mod/mod_ssl.html">mod_ssl</a></code>, implementa cifrado SSL (https).</li>
64 <li><code class="module"><a href="./mod/mod_deflate.html">mod_deflate</a></code>, implementa compresión y descompresión en el acto.</li>
65 <li><code class="module"><a href="./mod/mod_charset_lite.html">mod_charset_lite</a></code>, transcodificación entre diferentes juegos de caracteres.</li>
66 <li><code class="module"><a href="./mod/mod_ext_filter.html">mod_ext_filter</a></code>, ejecuta un programa externo como filtro.</li>
68 <p>Los filtros se usan internamente por Apache para llevar a cabo
69 funciones tales como chunking y servir peticiones de
70 byte-range. Además, los módulos contienen filtros que se
71 pueden seleccionar usando directivas de configuración al
72 iniciar el servidor.</p>
74 <p>Una mayor amplitud de aplicaciones son implementadas con módulos de
75 filtros de terceros que estan disponibles en <a href="http://modules.apache.org/">modules.apache.org</a> y en otros lados.
76 algunos de ellos son:</p>
79 <li>Procesamiento y reescritura de HTML y XML.</li>
80 <li>Transformaciones de XSLT y XIncludes.</li>
81 <li>Soporte de espacios de nombres en XML.</li>
82 <li>Manipulación de carga de archivos y decodificación de los
83 formularios HTML.</li>
84 <li>Procesamiento de imágenes.</li>
85 <li>Protección de aplicaciones vulnerables, tales como scripts PHP</li>
86 <li>Edición de texto de búsqueda y remplazo.</li>
88 </div><div class="top"><a href="#page-header"><img alt="top" src="./images/up.gif" /></a></div>
90 <h2><a name="smart" id="smart">Filtrado Inteligente</a></h2>
93 <img src="images/mod_filter_new.png" width="423" height="331" alt="Smart filtering applies different filter providers according to the state of request processing" />
95 <p><code class="module"><a href="./mod/mod_filter.html">mod_filter</a></code>, incluido en Apache 2.1 y posterior,
96 habilita la cadena de filtrado para ser configurada dinámicamente en
97 tiempo de ejecución. Así, por ejemplo, usted puede configurar un
98 proxy para que reescriba HTML con un filtro de HTML y imágenes JPEG
99 con filtros completos por separado, a pesar de que el proxy no tiene
100 información previa sobre lo que enviará al servidor de origen.
101 Esto funciona usando un engranaje filtros, que envía a diferentes
102 proveedores dependiendo del contenido en tiempo de ejecución.
103 Cualquier filtro puede ser, ya sea insertado directamente en la
104 cadena y ejecutado incondicionalmente, o usado como proveedor y
105 añadido dinámicamente
108 <li>Un filtro de procesamiento de HTML sólo se ejecuta si el
109 contenido es text/html o application/xhtml + xml.</li>
110 <li>Un filtro de compresión sólo se ejecuta si la entrada es un tipo
111 compresible y no está ya comprimida.</li>
112 <li>Se insertará un filtro de conversión de juego de caracteres,
113 si un documento de texto no está ya en el juego de caracteres
116 </div><div class="top"><a href="#page-header"><img alt="top" src="./images/up.gif" /></a></div>
117 <div class="section">
118 <h2><a name="service" id="service">Filtros expuestos como un servicio HTTP</a></h2>
121 <p>Los filtros pueden ser usados para procesar contenido originado
122 desde el cliente además de usarse para procesar el contenido originado
123 desde el propio servidor usando el módulo <code class="module"><a href="./mod/mod_reflector.html">mod_reflector</a></code>.</p>
125 <p><code class="module"><a href="./mod/mod_reflector.html">mod_reflector</a></code> acepta peticiones POST de los clientes, y
126 refleja el cuerpo de la petición POST recibida, dentro del contenido de la
127 respuesta de la petición, pasa a través de la pila del filtro de salida en
128 el camino de vuelta al cliente.</p>
130 <p>Esta técnica se puede utilizar como una alternativa a un servicio web
131 que se ejecuta en una pila de de aplicaciones dentro del servidor,
132 en donde el filtro de salida proporciona la transformación requerida en el
133 cuerpo de la petición. Por ejemplo, el módulo <code class="module"><a href="./mod/mod_deflate.html">mod_deflate</a></code>
134 puede ser usado para proporcionar un servicio de compresión general,
135 o un filtro de transformación de imagen, puede ser convertido en un
136 servicio de conversión de imágenes.
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="using" id="using">Usando los Filtros</a></h2>
143 <p>Hay dos formas de usar el filtrado: de forma Simple y Dinámica.
144 Generalmente, deberá usar una forma u otra; ya que mezclarlas puede
145 causar consecuencias inesperadas (a pesar de que reglas de Entrada de
146 tipo simple pueden ser combinadas libremente con reglas de filtrado
147 de Salidas de tipo simple o dinámico).</p>
148 <p>La forma más sencilla es la única manera de configurar filtros de
149 Entrada, y es suficiente para filtros de Salida donde se necesita una
150 cadena de filtros estática.
151 Las directivas más relevantes son:
152 <code class="directive"><a href="./mod/core.html#setinputfilter">SetInputFilter</a></code>,
153 <code class="directive"><a href="./mod/core.html#setoutputfilter">SetOutputFilter</a></code>,
154 <code class="directive"><a href="./mod/mod_mime.html#addinputfilter">AddInputFilter</a></code>,
155 <code class="directive"><a href="./mod/mod_mime.html#addoutputfilter">AddOutputFilter</a></code>,
156 <code class="directive"><a href="./mod/mod_mime.html#removeinputfilter">RemoveInputFilter</a></code>, and
157 <code class="directive"><a href="./mod/mod_mime.html#removeoutputfilter">RemoveOutputFilter</a></code>.</p>
159 <p>La forma Dinámica habilita ambas configuraciones estática, y dinámica, para los filtros de Salida, como se plantea en la página <code class="module"><a href="./mod/mod_filter.html">mod_filter</a></code>.
160 Las directivas más relevantes son:
161 <code class="directive"><a href="./mod/mod_filter.html#filterchain">FilterChain</a></code>,
162 <code class="directive"><a href="./mod/mod_filter.html#filterdeclare">FilterDeclare</a></code>, and
163 <code class="directive"><a href="./mod/mod_filter.html#filterprovider">FilterProvider</a></code>.</p>
165 <p>Una directiva más como es <code class="directive"><a href="./mod/mod_filter.html#addoutputfilterbytype">AddOutputFilterByType</a></code> sigue siendo
166 soportada pero esta obsoleta. Usa en cambio la configuración dinámica.</p>
169 <div class="bottomlang">
170 <p><span>Idiomas disponibles: </span><a href="./en/filter.html" hreflang="en" rel="alternate" title="English"> en </a> |
171 <a href="./es/filter.html" title="Español"> es </a> |
172 <a href="./fr/filter.html" hreflang="fr" rel="alternate" title="Français"> fr </a> |
173 <a href="./ja/filter.html" hreflang="ja" rel="alternate" title="Japanese"> ja </a> |
174 <a href="./ko/filter.html" hreflang="ko" rel="alternate" title="Korean"> ko </a> |
175 <a href="./tr/filter.html" hreflang="tr" rel="alternate" title="Türkçe"> tr </a></p>
176 </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>
177 <script type="text/javascript"><!--//--><![CDATA[//><!--
178 var comments_shortname = 'httpd';
179 var comments_identifier = 'http://httpd.apache.org/docs/2.4/filter.html';
181 if (w.location.hostname.toLowerCase() == "httpd.apache.org") {
182 d.write('<div id="comments_thread"><\/div>');
183 var s = d.createElement('script');
184 s.type = 'text/javascript';
186 s.src = 'https://comments.apache.org/show_comments.lua?site=' + comments_shortname + '&page=' + comments_identifier;
187 (d.getElementsByTagName('head')[0] || d.getElementsByTagName('body')[0]).appendChild(s);
190 d.write('<div id="comments_thread">Comments are disabled for this page at the moment.<\/div>');
192 })(window, document);
193 //--><!]]></script></div><div id="footer">
194 <p class="apache">Copyright 2017 The Apache Software Foundation.<br />Licencia bajo los términos de <a href="http://www.apache.org/licenses/LICENSE-2.0">Apache License, Version 2.0</a>.</p>
195 <p class="menu"><a href="./mod/">Módulos</a> | <a href="./mod/directives.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[//><!--
196 if (typeof(prettyPrint) !== 'undefined') {