Tomcat 问题 求救!错误如下:
严重: BAD packet signature 18245
2011-1-27 16:31:02 org.apache.jk.common.ChannelSocket processConnection
严重: Error, processing connection
java.lang.IndexOutOfBoundsException
at java.io.BufferedInputStream.read(BufferedInputStream.java:306)
at org.apache.jk.common.ChannelSocket.read(ChannelSocket.java:626)
at org.apache.jk.common.ChannelSocket.receive(ChannelSocket.java:583)
at org.apache.jk.common.ChannelSocket.processConnection(ChannelSocket.java:691)
at org.apache.jk.common.ChannelSocket$SocketConnection.runIt(ChannelSocket.java:895)
at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:685)
at java.lang.Thread.run(Thread.java:595) 展开
1
刚开始用TomCat的朋友想必都会遇到这个超时的问题,这个问题是Tomcat启动稍大的项目,如果按照原配置必然会产生的一个问题,那么这个问题如何解决呢?
2
这个问题在于Tomcat的默认配置问题,默认Tomcat中,启动一个项目需要耗时为45秒,而关闭一个项目需要耗时为15秒,一旦超过这个设定时间就会报错,这个是为了TomCat的性能而着想,但是实际上,稍微大一点的项目,在本地45秒是真的有点少的,所以我们需要把这个45和15改成450和150比较合适。
END
1
接口冲突一般是可以全部把项目跑完的,但是跑完以后发现无法打开网页,或者报错,如下图:这种错误又应该如何解决呢?
2
我们需要看一下Tomcat的默认端口配置这个配置真的很重要,一般来说,TomCat的admin接口是8005,而http访问的接口是8080,ajp访问的接口为8009,这些接口一般都是不会被其他程序占用的,但是万一被占用了,我们就需要改动这些地址,一般是在原接口数值的情况下加一。
END
1
这个问题嘛,一般就只有心急的朋友会遇到,才上班,匆匆的打开eclipse,然后人家还没完全开启呢,你就开tomcat呼啦啦的开始跑程序了,这时候大一点的项目往往会产生项目还没加载完,就被迫开始跑的情况,一般是直接404了,如下图
2
这个问题的解决方法,最省事的就是关了项目重开,这就行了。但是如果您确实担心项目内workspace有问题,或者是确实重开也无效,这个时候我们就要去他标配的路径中去找找有没有这个jar包了,有就没问题,没有的话,就说明您的代码还是有问题的,请仔细详查哦。
END
1
综上,其实Tomcat出错的问题并不是那么的难于解决,难点其实还是我们的不耐心和急躁导致的,多想想为什么会这样,通过实践来排除错误答案,这一切都会变得很简单,不是么?
END
务必确保Tomcat的配置是正确的,基本错误都出在配置上
请不要急躁,按部就班,对症下药,其实这个错误很好解决,怕的就是你不耐心
问题2:接口冲突
问题3:文件没编译完,运行失败
总结
注意事项
2023-07-28 广告
还有可能是TOMCAT默认的端口号8080被你机器上某个程序占用了,这样的话就要更改tomcat的端口号了
应该去请求HTTP/1.1的,写错端口号啦,再看看server.xml文件,应该是HTTP/1.1的post,
而不是AJP/1.3的post