天天看點

Tomcat 在IE中下載下傳rar檔案直接以亂碼方式打開解決方案

這幾天一直很納悶,在Tomcat部署的網站中的下載下傳檔案中,如果檔案是rar類型的,一點選下載下傳rar檔案就直接打開,并且出現亂碼,右鍵另存為浏覽器也是預設為html格式,一直以為是浏覽器IE的問題,後來發現其實不關浏覽器的問題,而是Tomcat伺服器配置的問題,具體如下:

web.xml檔案中配置<mime-mapping>下載下傳檔案類型

TOMCAT在預設情況下下載下傳.rar的檔案是把檔案當作text打開,以至于IE打開RAR檔案為亂碼,如果遇到這種情況時不必認為是浏覽器的問題,大多數浏覽器應該不會死皮賴臉地把二進制檔案當作文本打開,一般都是伺服器給什麼浏覽器就開什麼.解決方法: 

 打開conf/web.xml,加入下面的代碼. 

Tomcat 在IE中下載下傳rar檔案直接以亂碼方式打開解決方案

 <mime-mapping> 

Tomcat 在IE中下載下傳rar檔案直接以亂碼方式打開解決方案

 <extension>doc</extension>

Tomcat 在IE中下載下傳rar檔案直接以亂碼方式打開解決方案

 <mime-type>application/msword</mime-type> 

Tomcat 在IE中下載下傳rar檔案直接以亂碼方式打開解決方案

 </mime-mapping> 

Tomcat 在IE中下載下傳rar檔案直接以亂碼方式打開解決方案
Tomcat 在IE中下載下傳rar檔案直接以亂碼方式打開解決方案

 <extension>xls</extension> 

Tomcat 在IE中下載下傳rar檔案直接以亂碼方式打開解決方案

 <mime-type>application/msexcel</mime-type> 

Tomcat 在IE中下載下傳rar檔案直接以亂碼方式打開解決方案
Tomcat 在IE中下載下傳rar檔案直接以亂碼方式打開解決方案
Tomcat 在IE中下載下傳rar檔案直接以亂碼方式打開解決方案

 <extension>pdf</extension> 

Tomcat 在IE中下載下傳rar檔案直接以亂碼方式打開解決方案

 <mime-type>application/pdf</mime-type> 

Tomcat 在IE中下載下傳rar檔案直接以亂碼方式打開解決方案

 </mime-mapping>

Tomcat 在IE中下載下傳rar檔案直接以亂碼方式打開解決方案
Tomcat 在IE中下載下傳rar檔案直接以亂碼方式打開解決方案

 <extension>zip</extension> 

Tomcat 在IE中下載下傳rar檔案直接以亂碼方式打開解決方案

 <mime-type>application/zip</mime-type> 

Tomcat 在IE中下載下傳rar檔案直接以亂碼方式打開解決方案
Tomcat 在IE中下載下傳rar檔案直接以亂碼方式打開解決方案
Tomcat 在IE中下載下傳rar檔案直接以亂碼方式打開解決方案

 <extension>rar</extension> 

Tomcat 在IE中下載下傳rar檔案直接以亂碼方式打開解決方案

 <mime-type>application/rar</mime-type> 

Tomcat 在IE中下載下傳rar檔案直接以亂碼方式打開解決方案
Tomcat 在IE中下載下傳rar檔案直接以亂碼方式打開解決方案
Tomcat 在IE中下載下傳rar檔案直接以亂碼方式打開解決方案

 <extension>txt</extension> 

Tomcat 在IE中下載下傳rar檔案直接以亂碼方式打開解決方案

 <mime-type>application/txt</mime-type> 

Tomcat 在IE中下載下傳rar檔案直接以亂碼方式打開解決方案
Tomcat 在IE中下載下傳rar檔案直接以亂碼方式打開解決方案
Tomcat 在IE中下載下傳rar檔案直接以亂碼方式打開解決方案

 <extension>chm</extension> 

Tomcat 在IE中下載下傳rar檔案直接以亂碼方式打開解決方案

 <mime-type>application/mshelp</mime-type>

Tomcat 在IE中下載下傳rar檔案直接以亂碼方式打開解決方案
Tomcat 在IE中下載下傳rar檔案直接以亂碼方式打開解決方案

 <mime-mapping>

Tomcat 在IE中下載下傳rar檔案直接以亂碼方式打開解決方案

  <extension>mp3</extension>

Tomcat 在IE中下載下傳rar檔案直接以亂碼方式打開解決方案

  <mime-type>audio/x-mpeg</mime-type>

Tomcat 在IE中下載下傳rar檔案直接以亂碼方式打開解決方案
Tomcat 在IE中下載下傳rar檔案直接以亂碼方式打開解決方案

 重新開機TOMCAT,清除IE緩存,再打開RAR的檔案時就可以正常下載下傳了. 

 不同的ContentType 會影響用戶端所看到的效果.

 預設的ContentType為 text/html  也就是網頁格式.

 代碼如:

Tomcat 在IE中下載下傳rar檔案直接以亂碼方式打開解決方案

 <% response.ContentType ="text/html" %>  

Tomcat 在IE中下載下傳rar檔案直接以亂碼方式打開解決方案

 <!--#i nclude virtual="/ContentType.html" -->

 顯示的為網頁,而

Tomcat 在IE中下載下傳rar檔案直接以亂碼方式打開解決方案

 <% response.ContentType ="text/plain" %>  

Tomcat 在IE中下載下傳rar檔案直接以亂碼方式打開解決方案

 <!--#i nclude virtual="/sscript/ContentType.html" -->

 則會顯示html原代碼.

 以下為一些常用的 ContentType

Tomcat 在IE中下載下傳rar檔案直接以亂碼方式打開解決方案

GIF images 

Tomcat 在IE中下載下傳rar檔案直接以亂碼方式打開解決方案

 <% response.ContentType ="image/gif" %>  

Tomcat 在IE中下載下傳rar檔案直接以亂碼方式打開解決方案

 <!--#i nclude virtual="/myimage.gif" --> 

Tomcat 在IE中下載下傳rar檔案直接以亂碼方式打開解決方案

 JPEG images 

Tomcat 在IE中下載下傳rar檔案直接以亂碼方式打開解決方案

 <% response.ContentType ="image/jpeg" %>  

Tomcat 在IE中下載下傳rar檔案直接以亂碼方式打開解決方案

 <!--#i nclude virtual="/myimage.jpeg" --> 

Tomcat 在IE中下載下傳rar檔案直接以亂碼方式打開解決方案

 TIFF images 

Tomcat 在IE中下載下傳rar檔案直接以亂碼方式打開解決方案

 <% response.ContentType ="image/tiff" %>  

Tomcat 在IE中下載下傳rar檔案直接以亂碼方式打開解決方案

 <!--#i nclude virtual="/myimage.tiff" --> 

Tomcat 在IE中下載下傳rar檔案直接以亂碼方式打開解決方案

 MICROSOFT WORD document 

Tomcat 在IE中下載下傳rar檔案直接以亂碼方式打開解決方案

 <% response.ContentType ="application/msword" %>  

Tomcat 在IE中下載下傳rar檔案直接以亂碼方式打開解決方案

 <!--#i nclude virtual="/myfile.doc" --> 

Tomcat 在IE中下載下傳rar檔案直接以亂碼方式打開解決方案

 RTF document 

Tomcat 在IE中下載下傳rar檔案直接以亂碼方式打開解決方案

 <% response.ContentType ="application/rtf" %>  

Tomcat 在IE中下載下傳rar檔案直接以亂碼方式打開解決方案

 <!--#i nclude virtual="/myfile.rtf" --> 

Tomcat 在IE中下載下傳rar檔案直接以亂碼方式打開解決方案

 MICROSOFT EXCEL document 

Tomcat 在IE中下載下傳rar檔案直接以亂碼方式打開解決方案

 <% response.ContentType ="application/x-excel" %>  

Tomcat 在IE中下載下傳rar檔案直接以亂碼方式打開解決方案

 <!--#i nclude virtual="/myfile.xls" --> 

Tomcat 在IE中下載下傳rar檔案直接以亂碼方式打開解決方案

 MICROSOFT POWERPOINT document 

Tomcat 在IE中下載下傳rar檔案直接以亂碼方式打開解決方案

 <% response.ContentType ="application/ms-powerpoint" %>  

Tomcat 在IE中下載下傳rar檔案直接以亂碼方式打開解決方案

 <!--#i nclude virtual="/myfile.pff" --> 

Tomcat 在IE中下載下傳rar檔案直接以亂碼方式打開解決方案

 PDF document 

Tomcat 在IE中下載下傳rar檔案直接以亂碼方式打開解決方案

 <% response.ContentType ="application/pdf" %>  

Tomcat 在IE中下載下傳rar檔案直接以亂碼方式打開解決方案

 <!--#i nclude virtual="/myfile.pdf" --> 

Tomcat 在IE中下載下傳rar檔案直接以亂碼方式打開解決方案

 ZIP document 

Tomcat 在IE中下載下傳rar檔案直接以亂碼方式打開解決方案

 <% response.ContentType ="application/zip" %>  

Tomcat 在IE中下載下傳rar檔案直接以亂碼方式打開解決方案

 <!--#i nclude virtual="/myfile.zip" --> 

Tomcat 在IE中下載下傳rar檔案直接以亂碼方式打開解決方案

 下面是更詳細的ContentType

Tomcat 在IE中下載下傳rar檔案直接以亂碼方式打開解決方案

application/andrew-inset ez  

Tomcat 在IE中下載下傳rar檔案直接以亂碼方式打開解決方案

 application/mac-binhex40 hqx  

Tomcat 在IE中下載下傳rar檔案直接以亂碼方式打開解決方案

 application/mac-compactpro cpt  

Tomcat 在IE中下載下傳rar檔案直接以亂碼方式打開解決方案

 application/mathml+xml mathml  

Tomcat 在IE中下載下傳rar檔案直接以亂碼方式打開解決方案

 application/msword doc  

Tomcat 在IE中下載下傳rar檔案直接以亂碼方式打開解決方案

 application/octet-stream bin dms lha lzh exe class so dll  

Tomcat 在IE中下載下傳rar檔案直接以亂碼方式打開解決方案

 application/oda oda  

Tomcat 在IE中下載下傳rar檔案直接以亂碼方式打開解決方案

 application/ogg ogg  

Tomcat 在IE中下載下傳rar檔案直接以亂碼方式打開解決方案

 application/pdf pdf  

Tomcat 在IE中下載下傳rar檔案直接以亂碼方式打開解決方案

 application/postscript ai eps ps  

Tomcat 在IE中下載下傳rar檔案直接以亂碼方式打開解決方案

 application/rdf+xml rdf  

Tomcat 在IE中下載下傳rar檔案直接以亂碼方式打開解決方案

 application/smil smi smil  

Tomcat 在IE中下載下傳rar檔案直接以亂碼方式打開解決方案

 application/srgs gram  

Tomcat 在IE中下載下傳rar檔案直接以亂碼方式打開解決方案

 application/srgs+xml grxml  

Tomcat 在IE中下載下傳rar檔案直接以亂碼方式打開解決方案

 application/vnd.mif mif  

Tomcat 在IE中下載下傳rar檔案直接以亂碼方式打開解決方案

 application/vnd.mozilla.xul+xml xul  

Tomcat 在IE中下載下傳rar檔案直接以亂碼方式打開解決方案

 application/vnd.ms-excel xls  

Tomcat 在IE中下載下傳rar檔案直接以亂碼方式打開解決方案

 application/vnd.ms-powerpoint ppt  

Tomcat 在IE中下載下傳rar檔案直接以亂碼方式打開解決方案

 application/vnd.wap.wbxml wbxml  

Tomcat 在IE中下載下傳rar檔案直接以亂碼方式打開解決方案

 application/vnd.wap.wmlc .wmlc wmlc  

Tomcat 在IE中下載下傳rar檔案直接以亂碼方式打開解決方案

 application/vnd.wap.wmlscriptc .wmlsc wmlsc  

Tomcat 在IE中下載下傳rar檔案直接以亂碼方式打開解決方案

 application/voicexml+xml vxml  

Tomcat 在IE中下載下傳rar檔案直接以亂碼方式打開解決方案

 application/x-bcpio bcpio  

Tomcat 在IE中下載下傳rar檔案直接以亂碼方式打開解決方案

 application/x-cdlink vcd  

Tomcat 在IE中下載下傳rar檔案直接以亂碼方式打開解決方案

 application/x-chess-pgn pgn  

Tomcat 在IE中下載下傳rar檔案直接以亂碼方式打開解決方案

 application/x-cpio cpio  

上一篇: 快速排序

繼續閱讀