博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
linux 下tomcat部署项目中包含中文名称文件,报404找不到文件错误
阅读量:4354 次
发布时间:2019-06-07

本文共 908 字,大约阅读时间需要 3 分钟。

  1. 在linux系统中,如果将项目部署在tomcat下,项目中包含中文名称文件。可能会报404找不到文件的错误。
  2. 从Linux往 windows拷贝文件或者从windows往Linux拷贝文件,有时会出现中文文件名乱码的情况

原因:

  1. windows的文件名中文编码默认为GBK,而Linux中默认文件名编码为UTF8,由于编码不一致,所以导致了文件名乱码的问题,解决这个问题需要对文件名进行转码。

解决方法:

    1. 在Linux中专门提供了一种工具convmv进行文件名编码的转换,可以将文件名从GBK转换成UTF-8编码,或者从UTF-8转换到GBK。
      首先看一下你的系统上是否安装了convmv,如果没安装的话用在
      下载,然后在windows下面解压缩用winscp上传真个目录,之后进入此目录执行make install命令,之后用convmv命令测试是否安装成功,若显示一些命令提示则表示成功了。
      安装。
      下面看一下convmv的具体用法:
      convmv -f 源编码 -t 新编码 [选项] 文件名
      常用参数:
      -r 递归处理子文件夹
      --notest 真正进行操作,请注意在默认情况下是不对文件进行真实操作的,而只是试验。
      --list 显示所有支持的编码
      --unescap 可以做一下转义,比如把%20变成空格
      比如我们有一个utf8编码的文件名,转换成GBK编码,命令如下:
      convmv -f UTF-8 -t GBK --notest utf8编码的文件名
      这样转换以后"utf8编码的文件名"会被转换成GBK编码(只是文件名编码的转换,文件内容不会发生变化)
    2. tomcat服务器改为utf8编码 
      更改server.xml
      <Connector port=”8080″ protocol=”HTTP/1.1″ connectionTimeout=”20000″  redirectPort=”8443″ URIEncoding=”utf-8″ useBodyEncodingForURI=”true”/>

转载于:https://www.cnblogs.com/peterxu/p/5576516.html

你可能感兴趣的文章
MVC - 单点登录中间件
查看>>
when not exists 用法
查看>>
easyui_datagrid_method_扩展
查看>>
Jquery插件 自制分步滑动页面(全屏横移)
查看>>
iOS封装功能生成 .framework
查看>>
maven-java包管理工具-01
查看>>
flask中的CBV,flash,Flask-Session,WTForms - MoudelForm,DBUtils 数据库连接池
查看>>
最近整理的提供免费代理列表的几个网站
查看>>
探偵ガリレオー転写る2
查看>>
快速排序算法C++实现[评注版]
查看>>
七尖记
查看>>
VS2010/MFC编程入门之三十四(菜单:VS2010菜单资源详解)
查看>>
java面试题(摘录)
查看>>
hdu 3555 数位DP
查看>>
[036] 微信公众帐号开发教程第12篇-符号表情的发送(下)
查看>>
PQ分区魔术师图解教程
查看>>
[翻译] VBFPopFlatButton
查看>>
PlaceholderImageView
查看>>
Ubuntu14.04一直进入guest session解决办法
查看>>
排序算法的总结
查看>>