2010-07-19 7 views
13

Los tipos MIME se especifican en el archivo conf/web.xml de Tomcat. Se parece a esto:¿Cómo establecer el mime-tipe predeterminado para cualquier extensión de archivo en Tomcat 6?

<mime-mapping> 
    <extension>txt</extension> 
    <mime-type>text/plain</mime-type> 
</mime-mapping> 

Anteriormente Trato siguiente:

<mime-mapping> 
    <extension>*</extension> 
    <mime-type>application/octet-stream</mime-type> 
</mime-mapping> 

pero no me ayuda. ¿Cómo se especifica el tipo mime predeterminado para cualquier extensión de archivo?

+0

* no es una extensión válida. tendrá que especificar las extensiones que desea codificación especial, de lo contrario el valor predeterminado se toma como texto/html. – JoseK

+0

¿Cómo puedo cambiar el valor predeterminado de "text/html" a algo así como "application/octet-stream"? Gracias. –

+1

Prueba con Tomcat 7 Descubrí que si eliminas todas las entradas de asignación de mime, entonces la respuesta real NO incluirá en absoluto el encabezado Content-Type. El navegador web examinará el contenido y lo traducirá a texto/html si ve etiquetas en el contenido. – rbeede

Respuesta

12

No hay manera. Debe configurarlos explícitamente usted mismo. Un filtro de servlet es un lugar adecuado para esto.

public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws ServletException, IOException { 
    response.setContentType("application/octet-stream"); 
    chain.doFilter(request, response); 
} 

Sin embargo, me pregunto muy bien la necesidad del negocio para esto. Es solo una desventaja para SEO y el cliente. Si su único propósito es mostrar un diálogo Guardar como, entonces debe decirlo. Hay soluciones mucho mejores para lograr esto que forzar un tipo de mime equivocado.

+0

¡Gracias! El filtro es lo que necesito Lo uso para establecer el tipo de contenido predeterminado "application/octet-stream". Si no se especifica el tipo de contenido, la aplicación del cliente se bloquea debido a http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=6806893 –

+0

De acuerdo, forzar los tipos MIME para engañar a los navegadores puede ser un juego peligroso. – Brandon

Cuestiones relacionadas