问题描述
Aug 28, 2017 8:04:40 AM org.apache.jk.common.MsgAjp processHeader
SEVERE: BAD packet signature 18245Aug 28, 2017 8:04:40 AM org.apache.jk.common.ChannelSocket processConnection
SEVERE: Error, processing connection
java.lang.IndexOutOfBoundsException
at java.io.BufferedInputStream.read(BufferedInputStream.java:327)
at org.apache.jk.common.ChannelSocket.read(ChannelSocket.java:628)
at org.apache.jk.common.ChannelSocket.receive(ChannelSocket.java:585)
at org.apache.jk.common.ChannelSocket.processConnection(ChannelSocket.java:693)
at org.apache.jk.common.ChannelSocket$SocketConnection.runIt(ChannelSocket.java:898)
at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:690)
at java.lang.Thread.run(Thread.java:748)
原因,WEB请求访问端口不正确。也就是说在浏览器中输入的URL端口号是AJP协议的端口号,而不是WEB服务的端口号。
下面的例子中ARJ协议端口号为8999,真正的WEB服务端口号应为8989,所以,若使用8999访问,会出现上面的错误信息。
<Connector port="8999" protocol="AJP/1.3" redirectPort="8443" />
解决:将访问的URL端口号修改为WEB服务的端口号即8989而不是8999。
参考:
http://blog.csdn.net/hongweigg/article/details/37811005