(一)
Apache 通过 ajp 与Tomcat连接
<Connector port="8888" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" URIEncoding="UTF-8" />
<Connector port="8889" protocol="AJP/1.3" redirectPort="8443" URIEncoding="UTF-8" />
在http连接方式,及AJP方式中,都需要加上URIEncoding="UTF-8"
如果只在HTTP连接中加上,那么直接访问8888端口是正常,通过Apache访问则一样是乱码
(二)没效果
服务器端:
======
修改httpd.conf (在Redhat中放置的位置为/etc/httpd/conf/)
查找:
AddDefaultCharset ISO-8859-1
改成:
#AddDefaultCharset ISO-8859-1
AddDefaultCharset off
这种方式关掉了服务器的默认语言的发送,这样仅凭html文件头中设置的语言来决定网页语言。
有人直接用
AddDefaultCharset GB2312
但是不建议这样做。
重新启动Apache,
/etc/init.d/httpd restart
客户端:
=====
在中文网页请中依情况在标签中添加:
GB2312 (简体中文):
<META http-equiv=”Content-Type” content=”text/html; charset=gb2312″ />
BIG5(繁体中文):
<META http-equiv=”Content-Type” content=”text/html; charset=big5″ />
UTF-8: (注意是UTF-8,而不是UTF8)
<META http-equiv=”Content-Type” content=”text/html; charset=utf-8″ />
如果还是不正常,请清空浏览器的Cache试试。
(三) 未实现不通过js
百度的js
=========
var w = window, d = document, n = navigator, k = d.f.wd, a = d.getElementById(
"nv").getElementsByTagName("a"), isIE = n.userAgent.indexOf("MSIE") != -1;
if (!isIE || window.opera) {
d.getElementById("sh").style.display = "none"
}
for ( var i = 0; i < a.length; i++) {
a[i].onclick = function() {
if (k.value.length > 0) {
var e = this, b = e.href, c = encodeURIComponent(k.value);
if (b.indexOf("q=") != -1) {
e.href = b.replace(/q=[^&$]*/, "q=" + c)
} else {
this.href += "?q=" + c
}
}
}
}
(function() {
if (/q=([^&]+)/.test(location.search)) {
k.value = decodeURIComponent(RegExp.$1)
}
})();
========
分享到:
相关推荐
tomcat get提交中文乱码解决方案,修改tomcat server.xml 中以下为
总结,解决Spring 3 MVC中GET提交方式乱码问题,主要涉及服务器端的字符编码过滤器配置、Controller方法的参数接收以及前端页面的编码设置。理解HTTP协议和字符编码原理,以及正确配置Spring MVC,将有助于避免此类...
本文将深入探讨如何处理POST和GET提交时的乱码问题,以确保网页显示正常,避免出现中文或者其他非ASCII字符的乱码现象。 首先,我们要理解POST和GET的区别。POST请求通常用于向服务器发送大量数据或修改服务器资源...
1. **GET请求中的中文乱码**: 在GET请求中,参数通常被编码后附加在URL后面。Java的`URLEncoder.encode()`方法可以用来对参数进行编码,但默认使用的是ISO-8859-1编码,不支持中文。因此,我们需要明确指定为UTF-8...
解决方法:解决中文乱码问题的方法有两种,一种是使用POST方式,另一种是使用GET方式。 1、POST方式:在POST方式中,我们可以使用request.setCharacterEncoding("UTF-8")来指定解码方式为UTF-8。这将使服务器使用...
get提交中文乱码 地址重写中文乱码 jsp url中文乱码四种解决方式
get post提交表单中文乱码过滤器(java)
然而,当GET请求的参数包含中文字符时,由于编码格式不一致或者处理不当,可能会出现中文乱码的问题。本篇文章将详细介绍如何快速解决这一问题。 首先,我们需要理解乱码产生的原因。在HTTP请求中,URL(统一资源...
本文主要讨论如何解决Tomcat在处理GET提交请求时出现的乱码问题。 首先,我们要明白GET请求与POST请求的区别。GET请求通常用于获取资源,而POST请求则用于向服务器发送数据。对于POST请求,Spring框架提供了`...
本篇文章将详细介绍如何解决JSP页面提交时出现的乱码问题,包括GET请求和POST请求两种常见的情况。 #### 一、问题背景与分析 1. **GET请求乱码**: - GET请求是通过URL来传递参数的,这些参数通常会以编码的形式...
但在接收浏览器发送的带中文URL时,取参数就会是乱码。经过查找资源,发现大部分浏览器,中文一般会先转码为utf-8,此时,idHttpServer控件会根据请求头中ContentType的Chatset进行相应的转码,以形成正确的参数。但...
1. GET提交:GET方法常用于获取资源。在AJAX中,GET请求将参数附加到URL后面,通过这种方式发送数据。由于URL长度有限制,GET方法不适合传递大量或敏感数据。当使用GET时,请求会被浏览器缓存,这意味着用户可以通过...
3. 表单Get提交方式的乱码处理方式 在使用Get方式提交表单时,如果没有指定提交的编码格式,tomcat将使用iso8859-1编码格式进行提交,这将导致乱码。 解决方法有两种: A. 使用上例中的第一种方式,对接受到的...
在用 Get 方式传递参数时,如果中文字符会出现乱码,可能是由于 Get 提交默认是以 ISO88591 传递,而服务器需要指示客户端文档的编码方式所致。解决方案是,Get 提交默认是以 ISO88591 传递,如果容器没有做配置修改...
总结来说,解决Ajax POST提交中文乱码问题的关键在于前端编码两次并确保后端使用正确的解码方式。同时,服务器端页面的编码设置也很重要,如`<%@ page pageEncoding="GB18030"%>`确保了JSP页面的编码一致性。在实际...
解决办法 1、在后台获取时采用 String b = new String(request.getParameter("name").getBytes("iso-8859... 在前台处理汉字 java.net.URLEncoder.ecode("中文","GBK");//前面是要处理的中文字符 eg: win
JSP 中文乱码问题解决办法 JSP 页面中中文乱码问题是指在 JSP 页面中使用中文时,页面显示...解决 JSP 中文乱码问题需要从多方面入手,包括设置页面的字符编码、使用 POST 方式提交表单、使用 GET 方式提交表单等。
在 Tomcat 中,get 方法提交的参数实际上都是通过 URI 提交的,因此需要设置 URIEncoding 来管理这些参数。如果没有设定这个参数,Tomcat 将使用默认的 iso8859-1 对客户端的内容进行编码。 三、数据库 bean 配置 ...
2. 以 GET 方法提交的表单数据中有中文字符 当提交表单采用 GET 方法时,提交的数据作为查询字符串被附加到 URL 的末端,发送到服务器,此时在服务器端调用 setCharacterEncoding() 方法也就没有作用了。我们需要在...