urlrewritefilter处理中文url编码问题

JacobGuan 发布于 2013/04/14 14:38
阅读 602
收藏 1

各位高手

请问:当使用urlrewritefilter时,若路径不存在中文则正常,当路径存在中文时,路径会变成unicode编码,显示404,这是为何?

urlrewritefilter配置:

<filter>
		<filter-name>UrlRewriteFilter</filter-name>
		<filter-class>org.tuckey.web.filters.urlrewrite.UrlRewriteFilter</filter-class>
	</filter>
	
	<filter-mapping>
		<filter-name>UrlRewriteFilter</filter-name>
		<url-pattern>/*</url-pattern>
		<dispatcher>REQUEST</dispatcher>
		<dispatcher>FORWARD</dispatcher>
	</filter-mapping>
rule:
<rule>
		<note>属性筛选</note>
		<from >^/phone-(\w+)-(\w+)$</from>
		<to type="forward" last="true">/product/phone?ids=$1&amp;options=$2</to>
	</rule>
当用:

“http://127.0.0.1:8080/phone-1-1”时正常

当用:

“http://127.0.0.1:8080/phone-1-中文”时不正常中文被转换为unicode编码

请问如何处理?谢谢。


加载中
0
_DeepBlue
_DeepBlue
<rule>
		<note>属性筛选</note>
		<from >^/phone-(.+)-(.+)$</from>
		<to type="forward" last="true">/product/phone?ids=$1&amp;options=$2</to>
	</rule>

换成这样试试

(\w+)是([a-zA-Z_0-9]+)这个意识 不包括汉字在内的

0
JacobGuan
JacobGuan

引用来自“Missher”的答案

<rule>
		<note>属性筛选</note>
		<from >^/phone-(.+)-(.+)$</from>
		<to type="forward" last="true">/product/phone?ids=$1&amp;options=$2</to>
	</rule>

换成这样试试

(\w+)是([a-zA-Z_0-9]+)这个意识 不包括汉字在内的

一言惊醒梦中人~谢谢!
0
筱龙缘
筱龙缘
   <rule>
        <from>/news/list</from>
        <to type="forward" last="true">/listNews.shtml</to>

    </rule>


我这样配 怎么是404

返回顶部
顶部