Tomcat请求乱码(备忘)

腾讯云服务器被攻击,带宽被占满的抗战日记 故事 时间:2021-08-23 地点:腾讯云服务器 事件:服务器内容被黑,修复后某人气不过,开始DDOS,占满服务器的带宽,导致网站访问非常缓慢。 杂记 根据腾讯云后台+宝塔后台,带宽被占满:(小垃圾水管没办法) 部分参考:记一次阿里云服务器ECS流出带宽占满的解决过程 https://blog.youkuaiyun.com/wangzhihao1994/article/details/99563456 首先是在云主机上使用远程连接访问到云主机,安装iftop工具 CentOS . 阅读详情

   纠结了数日,终于搞定了乱码问题,归结是tomcat配置问题,在tomcat server.xml中有2个参数是配置编码的,一个是URIEncoding,另一个是useBodyEncodingForURI.

 

1. URIEncoding

This specifies the character encoding used to decode the URI bytes, after %xx decoding the URL. If not specified, ISO-8859-1 will be used.

    参数值为字符集,比如"UTF-8"等,这个参数在对http-get请求时有效,很多时候get请求的乱码起源,就是来自这里.任何http-get请求首先经过tomcat进行编码,编码的字符集就是使用"URIEncoding",编码之后整理成httpServerRequest参数交付给application;如果自己的web application也使用了各种url编码(比如在web.xml中配置Filter等),仍然无法改变tomcat对查询字符串编码的结果.

 

2. useBodyEncodingForURI

This specifies if the encoding specified in contentType should be used for URI query parameters, instead of using the URIEncoding. This setting is present for compatibility with Tomcat 4.1.x, where the encoding specified in the contentType, or explicitly set using Request.setCharacterEncoding method was also used for the parameters from the URL. The default value is  false .

 

    参数值为"true"或"false",表示"是否使用contentType中的encoding方式对URI进行编码";如果为true,且http请求中,在contentType中指定了编码方式,那么将采用contentType的编码方式去解码url之后的查询参数,将忽略URIEncoding的配置.此参数仍然只对http-get请求有效,tomcat无需对post请求进行编码.

    所以在get请求时,如果contentType指定了编码方式,将会带来一定的问题(最大的问题就是,服务器端对查询字符串的编码方式无法统一),最后我决定让 useBodyEncodingForURI 参数保持默认(false):即所有的URL查询字符串的编码采用URIEncoding的参数(UTF-8),服务器端编码保持原来的统一方式.

 

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

 

AEJoy —— 表达式之仅限在某一维摆动【JS】 效果图 wiggle() 的作用仅限于水平方向 想法 wiggle() 确实是一个非常方便的工具,但有时您希望对它有更多的控制。在本例中,我们希望仅将摆动限制在水平方向。 设计 要理解 wiggle() 最重要的一点是,它生成的结果与应用它的属性具有相同的维度。例如,如果你将 wiggle() 应用于 3D 层的 position 属性,结果将是一个由三个元素组成的数组(x、y 和 z 各一个)。我们需要做的就是将 wiggle() 的结果捕捉到一个变量(我们称之为 “w” ),然后从这个变量中提取我们想 阅读详情

相关推荐

华为海思IC前端中后端(COT&XPU)岗位笔试机考题

华为海思COT和XPU部门IC前端,IC中端,IC后端岗位笔试真题分享

weixin_37584728的博客 3362

[个人备忘] Tomcat 使用过程中的乱码问题

用的IDE为IntelliJ IDEA 首先配置IDEA的编码格式,全部设置成UTF-8 部署了JavaWeb程序后,Tomcat的乱码问题 一、控制台输出乱码 1.1 乱码界面 1.2 解决方案: 配置Tomcat 安装目录conf 文件夹下的logging.properties 文件 由于编码格式都是 GBK 所以都修改成了 UTF-8 个人以为控制台的三个输出窗口对应的是下面的 catalina, localhost, ConsoleHan...

Monoder的博客 363

使用基于python的neurora进行表征相似性分析(RSA)

发现了一款用于表征分析的Python API,还是挺方便的,这里简单介绍一下进行表征相似性分析的使用方法。

zjh12312311的博客 2765

【入门备忘录】tomcat常见乱码问题

一、Get方式乱码 常见解决方法: 一、修改server.xml,加入URIEncoding="UTF-8" 二、转码【不推荐使用,控制层方法太多要改死人】 <Connector port="9007" protocol="AJP/1.3" redirectPort="8443" maxPostSize="0" URIEncoding="UTF-8" useBodyEncodi

nheng的专栏 310

【STM32】H743的25MHZ外部晶振下480MHz时钟的CubeMX配置图

备忘 有时候临时调一个外设做实验需要快速搭建工程的时候,老忘记配置的数据 再补一段代码格式的 void SystemClock_Config(void) { RCC_OscInitTypeDef RCC_OscInitStruct = {0}; RCC_ClkInitTypeDef RCC_ClkInitStruct = {0}; RCC_PeriphCLKInitTypeDef PeriphClkInitStruct = {0}; /** Supply configuration up

一只爱做笔记的码农 3395

ubuntu 20.04 搭建多用户远程桌面共享及同时在线使用

摘要:本文介绍了在物理机上配置远程桌面访问的完整流程。通过setup_xrdp.sh脚本自动安装xrdp服务,修改配置文件并开放3389端口。同时提供了用户管理脚本:add_rdp_users.sh用于创建带sudo权限的远程用户,del_rdp_users.sh用于删除用户及主目录。还包含批量操作脚本add_rdp_all.sh和del_rdp_all.sh,支持一次性创建/删除多个用户(如dev1-dev5),所有用户密码统一设置为111111。完整方案实现了远程桌面环境的快速部署和用户集中管理。

623

URIEncoding与useBodyEncodingForURI 在tomcat中文乱码处理上的区别及CharacterEncodingFilter(备忘)

大家知道tomcat5.0开始,对网页的中文字符的post或者get,经常会出现乱码现象。 具体是因为Tomcat默认是按ISO-8859-1进行URL解码,ISO-8859-1并未包括中文字符,这样的话中文字符肯定就不能被正确解析了。 常见的解决方法是在tomcat的server.xml下的connetor属性中增加URIEncoding或者useBodyEncodingForURI

易的专栏 1万+

2025秋招LLM大模型多模态面试题(八)- langchain完整面试题

1. **什么是 LangChain** 2. **LangChain 包含哪些核心模块** - 模型输入/输出(Model I/O) - 组件管理 - 数据处理 - 链式组合 - 记忆与上下文管理 - 外部集成 3. **一些核心概念** 4. **什么是 LangChain Agent?** 5. **什么是 LangChain model?** 6. **LangChain 包含哪些特点?** 7. **LangChain 如何使用?** - LangChai

weixin_41496173的博客 2192

tomcat乱码问题解决

tomcat乱码问题解决

weixin_46246967的博客 79

由ip地址和子网掩码求网络号、主机号、广播地址(超详细)

1、用二进制数表示IP地址   在进行计算之前,我们首先要学会十进制的IP地址怎么转换为二进制的IP地址。   给出一个例子: 十进制:172.16.25.3 二进制:10101100.00010000.00011001.00000011 1、如果两台主机的网络号相同,我们就说它们是同一网段 2、主机号的意义 - 1)主机号部分全变成1,即为该网段的广播地址 - 2)主机号部分全变成0,即为该网段的网路地址(网络号) 3、如果主机号部分为x位,则该网络能容纳最大主机数为: 2的x次方-2。减2

爱吃雪糕的小布丁的博客 9万+

《UDS协议从入门到精通》系列——图解0x19:读取故障码信息

认识最核心的诊断服务“0x19”!!全网最强图解!一文搞懂所有常用子服务!

车载系统攻城狮 1万+

Tomcat7以前的版本乱码问题

Tomcat7及以前的版本乱码问题 URIEncoding与useBodyEncodingForURI 在tomcat中文乱码处理上的区别及CharacterEncodingFilter(备忘) 大家知道tomcat5.0开始,对网页的中文字符的post或者get,经常会出现乱码现象。 具体是因为Tomcat默认是按ISO-8859-1进行URL解码,ISO-8859-1并未包括中文字符,这样...

FreE’ 可乐 594

3D结构光 vs TOF——手机厂商为何选择TOF方案?

3D视觉感知技术路线分析:结构光与TOF对比 3D视觉感知领域存在结构光和TOF两大主流技术。结构光基于三角定位法,精度高(毫米级)但工作距离短(<1.5米),适合人脸识别等近距离场景;TOF通过测量光脉冲飞行时间计算深度,精度中等(厘米级)但工作距离长(0.5-5米+),更适合AR导航等中远距离应用。手机厂商选型时考虑:前置认证选择结构光(如苹果FaceID),后置场景倾向TOF(安卓阵营),因后者更适配全面屏设计、环境适应性强且成本优势明显。两种技术互补共存,共同推动3D感知应用发展。

致力于lidar应用开发 112

tomcat配置解决乱码问题

tomcat配置解决乱码问题

qq_38472535的博客 109

IDEA的使用指南

IDEA基于java的使用手册,可以最快速的上手,在使用中不断的丰富自己的使用技巧.

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

IDEA下tomcat启动后 server乱码,Tomcat Catalina Log乱码问题的解决

IDEA下tomcat启动后 server乱码,Tomcat Catalina Log乱码问题的解决

qq_38472465的博客 76

visio安装包

Microsoft Office Visio 是一款专业的制图软件。利用经过更新的形状、协作工具和数据链接图表,创建专业级图表以简化复杂的信息。

TOMCAT启动汉字乱码解决方案

TOMCAT启动汉字乱码解决方案

Littleree的博客 119

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

useBodyEncodingForURI=“true“解决Tomcat乱码问题

useBodyEncodingForURI="true"解决Tomcat乱码问题

10年职场两茫茫,35岁凄凉奈若何 273

windows 配置jdk 以及Tomcat 方法备忘及遇到的问题总结

jdk下载网址:https://www.oracle.com/index.html tomcat下载网址:https://tomcat.apache.org/ 一、jdk安装 先安装jdk,根据自己需求安装,安装后需要配置环境,右键我的电脑—属性----高级系统----环境变量 (1)点击系统变量下面的新建按钮,变量名JAVA_HOME(代表你的JDK安装路径),变量值对应的是你的JDK的安装路径。例:C:\Program Files\Java\jdk-16....

agoutou123456的博客 389

解决tomcat启动控制台输出中文乱码问题

解决tomcat启动控制台输出中文乱码问题

qq_38472465的博客 68

tomcat启动命令行窗口出现乱码的解决方法

tomcat启动命令行窗口出现乱码的解决方法

asdfgh0077的博客 181

(备忘)tomcat处理url参数中文乱码问题

tomcat在处理url参数时,默认是以ISO-8859-1字符集处理的,网上有很多人提出用String str = new String(request.getParameter("name").getBytes("ISO8859-1"),"utf-8");方式处理. 但这种方式很麻烦,用过滤器统一处理又更改不了request中的参数.难道要我每个servlet都去处理么? 所以我极力不推荐

jinciyulang的专栏 1057

JAVA Web项目开发乱码问题备忘

每次做中文项目时,必定会遇到的一个问题,就是中文显示乱码问题,每次的解决方式都不太相同。这次将GK项目过程中遇到乱码问题及解决方式记录下来,以备忘。乱码的可以有多个环节,如页面提交到tomcat乱码,tomcat到数据库乱码,数据库提取显示乱码。 一、页面提交到tomcat乱码解决方法是在tomcat/conf/server.xml中进行配置,以tomcat6.0.32为例,需将以下代码: &...

iteye_10301的博客 150

Tomcat中文乱码问题的原理和解决方法

Tomcat中文乱码问题的原理和解决方法

qq_38472451的博客 107

Tomcat下访问HTML页面乱码的解决方法

Tomcat下访问HTML页面乱码的解决方法

asdfgh0077的博客 652

Tomcat 日志打印乱码解决方法

Tomcat 日志打印乱码解决方法

wangchaoqi1985的博客 132
上一篇: SpringMVC项目搭建过程备忘
下一篇: Tomcat中Connector常用配置(备忘)
shift_alt_ctrl
博客等级 码龄10年 0粉丝 83原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值