Tomcat服务器详解

一.Tomcat介绍:

1.Tomcat是常见的免费的web服务器.

2.使用Tomcat服务器前后区别:

(1)不使用tomcat访问html:

在浏览器看到的地址都是 d:/hello.html的格式

(2)使用tomcat访问html:
可以像这样以127.0.0.1:8080/hello.html等格式访问,因为 tomcat本身是一个web 服务器,hello.html部署在了这个web服务器上

3.启动tomcat方式:

直接将解压后的tomcat的压缩包的bin里面的startup.bat文件运行,即启动了Tomcat服务器

4.部署网页:

(1)将hello.html复制到tomcat\webapps\ROOT目录下,接着在http://127.0.0.1:8080/test.html 访问该html了;

(2)8080是tomcat默认使用的端口号

二.修改端口号:

1.server.xml:

tomcat的端口配置相关信息在 server.xml中,server.xml 记录了非常多的tomcat配置信息,其中就包括端口

2.用记事本打开tomcat\conf\server.xml文件,将

<Connector port="8080" protocol="HTTP/1.1"             connectionTimeout="20000" redirectPort="8543" />

里面的8080即为端口号,即可修改它的值。

3.接着重启toncat,再运行startup.bat,即可通过新的端口访问网页。

三.Tomcat常见问题:

1 : JAVA_HOME :

(1)现象:点击startup.bat之后,屏幕一闪而过

(2)检验: 首先通过cmd命令进入控制台,然后切换到对应的目录执行startup命令,得到JRE_HOME environment … 这么个提示,就表示JAVA_HOME环境变量没有设置。

(3)分析:Tomcat本身是JAVA程序,必须要有JDK才可以执行,所以必须配置JAVA_HOME。

(4)解决:进入配置JAVA_HOME教程,跟着下载,配置,验证三个步骤学习如何进行JDK环境变量配置。

2 : CATALINA_HOME未设置 :

(1)现象:点击startup.bat之后,屏幕一闪而过

(2)检验: 首先通过cmd命令进入控制台,然后切换到对应的目录执行startup命令,得到CATALINA_HOME environment … 这么个提示,就表示CATALINA_HOME环境变量设置错误。

(3)分析:Tomcat执行必须依赖CATALINA_HOME或者CATALINA_BASE这两个环境变量。 如果没有在环境变量里配置过,那么会自动采用bin目录的父目录作为CATALINA_HOME和CATALINA_BASE。 如果配置了,而所配置的地方又不是正确的TOMCAT目录,那么就会出现这个错误。

(4)解决:
a.在环境变量中删除CATALINA_HOME,CATALINA_BASE的配置,记得不仅要检查环境变量,还要检查用户变量。
b. 或者把CATALINA_HOME设置为正确的TOMCAT目录。

3 : CATALINA_HOME错误设置 :

(1)现象:Tomcat可以成功启动,但是就是不能访问自己配置的web应用,老是提示404错误

(2)检验:如图所示, 在环境变量里,CATALINA_HOME设置在了另一个合法的tomcat目录上,所以无论运行哪个startup.bat,都会导致这个d:/tomcatxxxx目录下的程序被启动,而不是你期望的那个。

(3)分析:默认的Tomcat会优先根据环境变量中的CATALINA_HOME来定位目录,并运行。

(4)解决:
a.在环境变量中删除CATALINA_HOME,CATALINA_BASE的配置,记得不仅要检查环境变量,还要检查用户变量。
b. 或者使用本站的纯净版 Tomcat,已经取消了对环境变量CATALINA_HOME和CATALINA_BASE的依赖。

4 : 端口冲突 :

(1)现象:屏幕一闪而过,或者不会关闭,但是提示大量错误,其中会看到如图所示的Address already in use: JVM_Bind :80,即表示端口被占用了。

(2)检验:如果是这个错误,在TOMCAT目录下的logs目录里,会有一个日志文件:catalina.yyyy-mm-dd.log(当天时间),在这个日志文件里会记载一样的错误:Address already in use: JVM_Bind :80。即表明80端口被占用了。

(3)分析:端口是独占式的,一旦一个程序占用了这个端口,其他程序就不能够再去占用它了。而80端口,有可能是被已经存在的Tomcat占用了,也有可能是被其他不知名的软件占用了,比如Apache,IIS,Oracle等等。

(4)解决:请按照Tomcat 端口被占用了怎么办? 步骤进行操作,定位占用端口的程序,并关闭,即可

5 : localhost.yyyy-mm-dd.log :

(1)现象:404错误

(2)检验:打开tomcat/logs目录里的localhost.yyyy-mm-dd.log文件,发现大量的报错信息。

(3)分析:当server.xml, web.xml配置错误的时候,当前web应用就会部署失败,并且会将错误信息输出到localhost.yyyy-mm-dd.log文件中。

(4)解决: 要在localhost.yyyy-mm-dd.log文件中看提示什么错误,有可能是配置的context目录不存在,有可能是多了一个>符号,具体问题,具体分析了

6 : Error FilterStart :

(1)现象:404错误,明明有文件,但是就是不能访问。

(2)检验:这个严格地说,也是配置失败,但是tomcat不会大量报错,只会偷偷地来这么一句: startup failed due to previous errors。

(3)分析:过滤器启动失败就会报这个错。

(4)解决:同样的,过滤器启动失败原因也是多种多样,好在它都会把具体错误信息输出到localhost.yyyy-mm-dd.log,这样打开localhost.yyyy-mm-dd.log根据实际情况分析,就可以较快定位问题所在了

7 : JDK版本 :

(1)现象:404错误,明明有文件,但是就是不能访问。

(2)检验:在命令行中运行java -version 检查一下当前java的版本

(3)分析:当部署的web应用中的类是由高版本JDK编译生成,而当前tomcat运行所使用的JDK又是低版本的话,就会报出如图所示的错误:UnsupportedClassVersionError,进而导致web应用启动失败。

(4)解决:请使用JDK8或者更高版本,请参考 检测JDK版本,以及下载与配置

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值