web.xml文件中配置mime下载文件类型(转)

转自:http://5aijava.iteye.com/blog/166600

  TOMCAT在默认情况下下载.rar的文件是把文件当作text打开,以至于IE打开RAR文件为乱码,如果遇到这种情况时不必认为是浏览器的问题,大多数浏览器应该不会死皮赖脸地把二进制文件当作文本打开,一般都是服务器给什么浏览器就开什么.解决方法: 

打开conf/web.xml,加入下面的代码.:

 

<mime-mapping> 
<extension>doc</extension> 
<mime-type>application/msword</mime-type> 
</mime-mapping> 
<mime-mapping> 
<extension>xls</extension> 
<mime-type>application/msexcel</mime-type> 
</mime-mapping> 
<mime-mapping> 
<extension>pdf</extension> 
<mime-type>application/pdf</mime-type> 
</mime-mapping> 
<mime-mapping> 
<extension>zip</extension> 
<mime-type>application/zip</mime-type> 
</mime-mapping> 
<mime-mapping> 
<extension>rar</extension> 
<mime-type>application/rar</mime-type> 
</mime-mapping> 
<mime-mapping> 
<extension>txt</extension> 
<mime-type>application/txt</mime-type> 
</mime-mapping> 
<mime-mapping> 
<extension>chm</extension> 
<mime-type>application/mshelp</mime-type> 
</mime-mapping>

 

重启TOMCAT,清除IE缓存,再打开RAR的文件时就可以正常下载了. 
Trackback: http://tb.blog.csdn.net/TrackBack.aspx?PostId=1527483

1.指定了自己的javaEncoding 

(参考 http://gceclub.sun.com.cn/staticcontent/html/sunone/app7/app7-dg-webapp/ch6/ch6-4.html     <servlet> 
        <servlet-name>jsp</servlet-name> 
        <servlet-class>org.apache.jasper.servlet.JspServlet</servlet-class> 
        <init-param> 
            <param-name>fork</param-name> 
            <param-value>false</param-value> 
        </init-param> 
                <init-param> 
            <param-name>javaEncoding</param-name> 
            <param-value>GB18030</param-value> 
        </init-param> 
        <init-param> 
            <param-name>xpoweredBy</param-name> 
            <param-value>true</param-value> 
        </init-param> 
        <load-on-startup>3</load-on-startup> 
    </servlet>

 

2.添加rar,iso等的mime-type映射 
避免在浏览器里直接打开。 

<mime-mapping> 
<extension>mht</extension> 
<mime-type>text/x-mht</mime-type> 
</mime-mapping> 
<mime-mapping> 
        <extension>rar</extension> 
        <mime-type>application/octet-stream</mime-type> 
    </mime-mapping> 
    <mime-mapping> 
        <extension>iso</extension> 
        <mime-type>application/octet-stream</mime-type> 
    </mime-mapping> 
    <mime-mapping> 
        <extension>ape</extension> 
        <mime-type>application/octet-stream</mime-type> 
    </mime-mapping> 
    <mime-mapping> 
        <extension>rmvb</extension> 
        <mime-type>application/octet-stream</mime-type> 
    </mime-mapping> 
    <mime-mapping> 
        <extension>ico</extension> 
        <mime-type>image/x-icon</mime-type> 
    </mime-mapping> 

   <mime-mapping> 
   <extension>doc</extension>  
<mime-type>application/msword</mime-type>  
</mime-mapping>  
<mime-mapping>  
   <extension>xls</extension>  
   <mime-type>application/vnd.ms-excel</mime-type>  
</mime-mapping>  
<mime-mapping>  
   <extension>ppt</extension>  
   <mime-type>application/vnd.ms-powerpoint</mime-type>  
</mime-mapping> 

 

3.对html静态页面设置编码 

<!--  修改下面两行以支持静态超文本的自动编码 
  --> 
<mime-mapping> 
  <extension>htm</extension> 
  <mime-type>text/html;charset=gb2312</mime-type> 
  </mime-mapping> 
<mime-mapping> 
  <extension>html</extension> 
  <mime-type>text/html;charset=gb2312</mime-type> 
  </mime-mapping> 
  </web-app>

 

 

 

posted @ 2014-01-01 20:38  horizon~~~  阅读(692)  评论(0编辑  收藏  举报