`
仁生之狼
  • 浏览: 45018 次
  • 性别: Icon_minigender_1
  • 来自: 苏州
社区版块
存档分类
最新评论

Linux Tomcat中文路径乱码

 
阅读更多

TOMCAT 中文路径乱码的解决方案:

在Server.xml文件中添加一个名为URIEncoding的属性,它用于对HTTP请求中的get方法传过来的URL进行编码。tomcat默认的对于get协议中的URL编码都是ISO-8859-1,这个字符集不能直接支持中文等双字节的信息,而中文文件的下载链接恰恰是通过get协议进行的。以下说明修改Tomcat安装目录中的conf文件夹中的server.xml文件的方法。

打开conf/server.xml文件,如果没有修改过这个文件,应该可以在其中找到如下代码:

 

<Connector port="8080" protocol="HTTP/1.1" 
               maxThreads="150" connectionTimeout="20000" disableUploadTimeout="true"/>

这段代码规定了Tomcat监听HTTP请求的端口号等信息,可以在这里添加一个属性:URIEncoding,将该属性值设置为UTF-8,即可让Tomcat不再以ISO-8859-1的编码处理get请求。更改后的代码如下所示(红色部分为新添加的代码):

 

<Connector port="8080" protocol="HTTP/1.1" 
               maxThreads="150" connectionTimeout="20000" disableUploadTimeout="true" 
               URIEncoding="UTF-8"/>

  下面,准备测试一下更改后的效果。

 

最为简单的测试方法就是让Tomcat自己列出WEB程序中的目录和文件,默认情况下,Tomcat不会直接列出WEB程序目录中的文件和文件夹,但是,我们可以修改位于安装目录中的conf文件夹中的web.xml,使其能够支持自动列出WEB程序中的目录和文件。 

在conf/web.xml文件中找到如下代码:,将下面代码中蓝色false改为true,则可以在浏览器中

 

<servlet>
        <servlet-name>default</servlet-name>
        <servlet-class>org.apache.catalina.servlets.DefaultServlet</servlet-class>
        <init-param>
            <param-name>debug</param-name>
            <param-value>0</param-value>
        </init-param>
        <init-param>
            <param-name>listings</param-name>
            <param-value>false</param-value>
        </init-param>
        <load-on-startup>1</load-on-startup>
    </servlet>

即将参数listings的属性改为true,就可让Tomcat自动列出某个WEB程序目录中的文件和文件夹。 

该方法在windows操作系统中正常,linux中还需要进行进一步的确认

看linux的默认编码(先确认有中文包)。命令#locale,如果与开发环境不一样,修改一下。

以下是LINUX服务器的版本及编码信息

修改Linux的默认编码

1.修改/etc/sysconfig/i18n文件

LANG="en_US.UTF-8"
SYSFONT="latarcyrheb-sun16"

修改为: 

LANG="zh_CN.GB18030"
SUPPORTED="zh_CN.GB18030:zh_CN:zh"
SYSFONT="latarcyrheb-sun16""
SYSFONTACM="8859-15"

 

 

分享到:
评论

相关推荐

    Ubuntu下使用Tomcat搭建网站出现中文乱码的问题.docx

    要解决 Ubuntu 下使用 Tomcat 搭建网站出现中文乱码的问题,需要统一服务器的字符编码,包括 Linux 服务器、Tomcat 配置文件和 MySQL 数据库。通过统一字符编码,可以确保服务器的字符编码是一致的,避免乱码的出现...

    window tomcat项目迁移到linux

    - 文件路径差异:Windows与Linux的路径表示方式不同,需要检查项目中的所有硬编码路径。 - 文件权限:Linux对文件权限有严格控制,确保所有运行所需的文件都有正确的权限。 - 配置文件差异:比如server.xml, context...

    linux下java生成图片乱码问题.doc

    在Linux环境下,使用Java生成包含中文的图片时,经常遇到一个常见的问题——中文字符显示为乱码。这个问题的根源在于Linux系统默认的字体库中可能缺少支持中文的字体,因此在渲染中文字符时无法正确显示。针对这个...

    linux下mysql数据库乱码问题

    ### Linux 下 MySQL 数据库乱码问题详解 #### 一、问题背景及原因分析 在 Linux 系统中使用 MySQL 数据库时,可能会遇到字符集不匹配导致的数据乱码问题。通常这种现象表现为数据库中的文本数据无法正确显示或存储...

    linux安装jdk和tomcat

    如果遇到客户端工具连接Linux系统时出现乱码问题,可以按照描述中的步骤修改`/etc/sysconfig/i18n`文件来解决。 接下来,我们开始安装JDK。首先,需要确认系统中是否已安装OpenJDK,通过`rpm –qa | grep jdk`命令...

    apache-tomcat-8.0.33中文.zip

    Apache Tomcat 8.0.33 在处理请求和响应时,提供了良好的字符集支持,可以有效地避免中文乱码问题。它允许开发者通过配置服务器或应用程序级别的设置来指定默认编码,确保数据在输入和输出过程中保持正确性。 在...

    Linux下JDK中文字体乱码的解决方法

    ### Linux下JDK中文字体乱码的解决方法 #### 问题背景与描述 在Linux环境下部署Java应用程序时,有时会遇到中文字符显示为乱码(通常表现为一系列的方框或者问号)的问题。这种情况主要发生在使用特定字体(如宋体...

    Linux加载windows字体

    然后,需要添加字体在fonts下创建文件夹,上传Tomcat/config/fonts下的所有字体至/usr/shared/fonts/windows目录下,修改权限,安装ttmkfdir搜索组件,执行ttmkfdir命令,修改字体配置文件,添加新路径至配置文件,...

    tomcat9绿色版

    2. **启动与停止**:通常,通过执行`bin/startup.sh`(Linux/Mac)或`bin/startup.bat`(Windows)脚本来启动Tomcat,而`shutdown.sh`或`shutdown.bat`用于关闭服务器。 3. **目录结构**:了解`conf`、`webapps`、`...

    IDEA中Tomcat乱码问题

    当Tomcat启动时,控制台输出的日志中中文字符可能会显示为乱码,这会影响开发者对日志信息的理解和分析。日志乱码通常发生在两个地方:一是IDEA的控制台输出,二是Tomcat服务器自身的日志输出。 ### 解决方法 ####...

    Tomcat的安装及配置教程.pdf

    - **安装路径注意事项**:建议使用英文路径,因为某些中文路径可能会导致Tomcat无法正常启动或出现乱码问题。此外,路径应简洁明了,便于管理和维护。 #### 四、配置环境变量 - **配置CATALINA_HOME**:在系统环境...

    tomcat服务器以及环境配置

    选择合适的安装路径,避免中文目录,以防止出现乱码问题。 3. **配置环境变量**:环境变量的设置对于Tomcat的正常运行至关重要。文件`Tomcao环境变量的设置.txt`可能包含了详细的环境变量配置指南。通常,你需要...

    tomcat常用功能的配置

    若想更改Tomcat所使用的JDK路径,可以按照以下步骤操作: 1. **编辑`catalina.bat`或`catalina.sh`文件**:对于Windows平台,找到Tomcat安装目录下的`bin`文件夹中的`catalina.bat`文件;对于Linux平台,则是`bin`...

    Tomcat调优配置技巧[参考].pdf

    FusionCharts是一款图表库,集成到Tomcat应用中,需要正确配置资源路径和JavaScript引用,以确保图表正常显示。 以上是针对Tomcat的一些基本调优策略,实际调优过程可能需要根据应用的具体需求和服务器环境进行更...

    RedHat-Linux上部署javaweb项目.doc

    在Linux环境下,MySQL的安装路径通常是`/home/mysql/mysql5.0.87`,要启动MySQL服务,可以使用`# bin/mysqld_safe --user=mysql &`。然后,使用`# mysql –u root –p`登录数据库,并执行SQL脚本(如`AiWang.sql`)...

Global site tag (gtag.js) - Google Analytics