tomcat中文连接地址设置

问题描述: html

Tomcat默认状况下经过ISO-8859-1编码格式对全部请求的URL进行编码,所以,当某个URL中包含中文路径名称或文件名称时, tomcat

    如请求:http://localhost:8080/pro/中文名称.html 编码

Tomcat会没法正确解析和获取该URL地址,而引起HTTP 404错误。 spa

解决办法: code

    在tomcat-->conf-->server.xml文件中 ,指定HTTP Connnector的URIEncoding="utf-8" server

: xml

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

URIEncoding属性具体指定了tomcat用来对URI进行解码的字符编码格式,若是省略该字段,默认状况下tomcat会使用ISO-8859-1编码格式来对URI进行解码。 htm

补充: utf-8

除了用URIEncoding来指定URI的解码格式外,利用<Connector>标签的的useBodyEncodingForURI 属性一样也能够达到一样的效果,io

该字段指定是否能够用请求中的contentType字段中的编码格式来对URI进行编码。这个设置主要是为兼容4.1.x版本的tomcat

由于该版本的tomcat是使用HTTP头中contentType字段指明的编码格式或经过Request.setCharacterEncoding 方法指明的编码格式来对URI进行编码

相关文章
相关标签/搜索