温馨提示×

debian怎么设tomcat码

小樊
46
2026-09-30 15:04:38
栏目: 智能运维

你问的应该是 Debian 下如何设置 Tomcat 的编码(字符集),常见是设置成 UTF-8,避免中文乱码。下面按常见场景说明。


一、设置 Tomcat 启动编码(推荐)

1. 修改 setenv.sh

在 Tomcat 的 bin 目录下(如 /opt/tomcat/bin/ 或 /usr/share/tomcat9/bin/):

sudo nano /opt/tomcat/bin/setenv.sh

加入以下内容:

export CATALINA_OPTS="$CATALINA_OPTS -Dfile.encoding=UTF-8"
export JAVA_OPTS="$JAVA_OPTS -Dfile.encoding=UTF-8"

保存后:

sudo chmod +x /opt/tomcat/bin/setenv.sh

重启 Tomcat:

sudo systemctl restart tomcat9

二、设置 Tomcat 连接器(Connector)编码

编辑 server.xml:

sudo nano /etc/tomcat9/server.xml

找到 <Connector> 标签,添加 URIEncoding="UTF-8":

<Connector
    port="8080"
    protocol="HTTP/1.1"
    connectionTimeout="20000"
    redirectPort="8443"
    URIEncoding="UTF-8" />

如果是 AJP 连接器:

<Connector port="8009" protocol="AJP/1.3" URIEncoding="UTF-8" />

重启 Tomcat:

sudo systemctl restart tomcat9

三、设置系统默认编码(Debian)

查看当前编码:

locale

如果不是 UTF-8:

sudo dpkg-reconfigure locales

选择:

en_US.UTF-8

或:

zh_CN.UTF-8

完成后:

source /etc/default/locale

四、Web 应用层面(补充)

JSP

<%@ page contentType="text/html;charset=UTF-8" %>

Servlet

request.setCharacterEncoding("UTF-8");
response.setContentType("text/html;charset=UTF-8");

五、验证是否生效

写个测试页面或日志:

System.out.println(System.getProperty("file.encoding"));

输出应为:

UTF-8

如果你说的“设 tomcat 码”是指 端口、密码、开机启动、HTTPS 等,也可以告诉我具体场景,我可以给你更精确的配置。

0 踩