问题描述:
之前系统使用mod-jk+ajp协议链接apache+tomcat。正常请求 http://xxx.com/show.htm 在某一处转义为:
http://xxx.com/sho%2577.htm 。这样的链接。并且可以正常访问。
迁移mod-proxy之后转义之后的URL不能访问。
原因:
1、mod-jk 1.2.23 以下的版本默认会做一次URL decode。参见(http://tomcat.apache.org/security-jk.html)
2、jk的配置里面添加
JkOptions +ForwardURICompat
之后也会做一次 URL decode 更多的配置参见(http://tomcat.apache.org/connectors-doc/reference/apache.html#Forwarding)
所以浏览器decode一次 + jk decode %2577 ——》%77——》w
扩展:
关于 apache rewrite 应用容器 这里有更多的描述 (http://zldeng1984.iteye.com/blog/1506432)
本文探讨了从使用mod-jk+ajp协议链接到迁移到mod-proxy后出现的问题,即转义后的URL无法访问。文章分析了mod-jk在1.2.23版本之前的默认行为及配置项如何影响URL解码,并提供了解决方案。
2578

被折叠的 条评论
为什么被折叠?



