日期:2014-05-16  浏览次数:20936 次

apache roller3的一个问题
roller3版本后,日志的固定链接已经更换成
http://www.mydomain.com/roller/handle/entry/[topictitle]
这种形式。

我在Apache 2.1 + Tomcat 5.0.28部署roller 3.1,结果发现了以下一个问题:
当我访问:
http://www.mydomain.com/roller/handle/entry/%E6%B5%8B%E8%(最后部分是编码过的UTF-8字符)
会出现页面无法找到的情况[tomcat404的报错]

但是我通过TOMCAT的8080端口访问,则正常
http://www.mydomain.com:8080/roller/handle/entry/%E6%B5%8B%E8%

各位是否碰到到过此问题?请教解决方法。谢谢


Apache中采用的Ajp/1.3来连接Tomcat。并且Tomcat中的连接器配置已经指定了URIEncoding为UTF-8。
如下:
----------------------------
<Connector URIEncoding="UTF-8" acceptCount="60000" connectionLinger="0" connectionTimeout="0" connectionUploadTimeout="0" port="8009" protocol="AJP/1.3" protocolHandlerClassName="org.apache.jk.server.JkCoyoteHandler" redirectPort="8443" tcpNoDelay="false">
</Connector>
----------------------------

1 楼 bhlove 2007-11-29  
bhlove 写道
roller3版本后,日志的固定链接已经更换成
http://www.mydomain.com/roller/handle/entry/[topictitle]
这种形式。

我在Apache 2.1 + Tomcat 5.0.28部署roller 3.1,结果发现了以下一个问题:
当我访问:
http://www.mydomain.com/roller/handle/entry/%E6%B5%8B%E8%(最后部分是编码过的UTF-8字符)
会出现页面无法找到的情况[tomcat404的报错]

但是我通过TOMCAT的8080端口访问,则正常
http://www.mydomain.com:8080/roller/handle/entry/%E6%B5%8B%E8%

各位是否碰到到过此问题?请教解决方法。谢谢


Apache中采用的Ajp/1.3来连接Tomcat。并且Tomcat中的连接器配置已经指定了URIEncoding为UTF-8。
如下:
----------------------------
<Connector URIEncoding="UTF-8" acceptCount="60000" connectionLinger="0" connectionTimeout="0" connectionUploadTimeout="0" port="8009" protocol="AJP/1.3" protocolHandlerClassName="org.apache.jk.server.JkCoyoteHandler" redirectPort="8443" tcpNoDelay="false">
</Connector>
----------------------------

此问题的已经得到解决。
方法:
下载最新的版本的jk_mod.so

http://apache.mirror.phpchina.com/tomcat/tomcat-connectors/jk/binaries/win32/