概述
Tomcat
是一个免费的开放源代码的Web 应用服务器,属于轻量级应用服务器,是Apache
软件基金会(Apache Software Foundation)的Jakarta
项目中的一个核心项目,由Apache
、Sun
和其他一些公司及个人共同开发而成。由于有了Sun
的参与和支持,最新的Servlet
和JSP
规范总是能在Tomcat
中得到体现。
使用
前往官网:http://tomcat.apache.org进行下载
安装版:一台计算机上只能安装一个Tomcat
;
解压版:无需安装,解压直接下载解压即可使用,一般开发使用解压版。
环境变量
JAVA_HOME:Tomcat
启动需要使用JDK
,必须先配置JAVA_HOME
。
CATALANA_HOME:如果是安装版,需要配置此变量,这个变量用来指定Tomcat
的安装路径。
启动和关闭
启动
- 进入tomcat路径下的\bin目录,windows找到
startup.bat
,双击 - 进入tomcat路径下的\bin目录,linux使用命令
./startup.up
启动 - TomCat默认端口号
8080
通过http://ip:8080
进行访问,Linux
可以通过ps -ef | grep tomcat
查看进程,确定是否启动成功。
关闭
- windows进入进入tomcat路径下的\bin目录,找到
shutdown.bat
,双击 - linux需要杀掉线程,首先查看进程号:
ps -ef |grep tomcat
,然后:kill -9 进程号
杀死进程
目录结构
bin
该目录下存放的是二进制可执行文件;
conf
服务器的配置文件,这个目录下有四个最为重要的文件:
server.xml:配置整个服务器信息。例如修改端口号,添加虚拟主机等;
tomcatusers.xml:存储TomCat用户的文件,这里保存的是TomCat的用户名及密码,以及用户的角色信息。可以按着该文件中的注释信息添加TomCat用户,然后就可以在TomCat主页中进入Tomcat Manager页面了;
web.xml:部署描述符文件,这个文件中注册了很多MIME类型,即文档类型。这些MIME类型是客户端与服务器之间说明文档类型的,如用户请求一个html网页,那么服务器还会告诉客户端浏览器响应的文档是text/html类型的,这就是一个MIME类型。客户端浏览器通过这个`MIME`类型就知道如何处理它了。当然是在浏览器中显示这个html文件了。但如果服务器响应的是一个exe文件,那么浏览器就不可能显示它,而是应该弹出下载窗口才对。`MIME`就是用来说明文档的内容是什么类型的!
context.xml:对所有应用的统一配置,通常我们不会去配置它。
lib
Tomcat的类库,里面是一大堆jar文件。如果需要添加Tomcat依赖的jar文件,可以把它放到这个目录中,当然也可以把应用依赖的jar文件放到这个目录中,这个目录中的jar所有项目都可以共享之,但这样你的应用放到其他Tomcat下时就不能再共享这个目录下的jar包了,所以建议只把Tomcat需要的jar包放到这个目录下;
logs
这个目录中都是日志文件,记录了Tomcat启动和关闭的信息,如果启动Tomcat时有错误,那么异常也会记录在日志文件中。
temp
存放Tomcat的临时文件,这个目录下的东西可以在停止Tomcat后删除!
webapps
存放web项目的目录,其中每个文件夹都是一个项目,如果这个目录下已经存在了目录,那么都是TomCat自带的。项目。其中ROOT是一个特殊的项目,在地址栏中没有给出项目目录时,对应的就是ROOT项目。http://localhost:8080/examples,进入示例项目。其中examples就是项目名,即文件夹的名字。
work
运行时生成的文件,最终运行的文件都在这里。通过webapps中的项目生成的!可以把这个目录下的内容删除,再次运行时会生再次生成work目录。当客户端用户访问一个JSP文件时,Tomcat会通过JSP生成Java文件,然后再编译Java文件生成class文件,生成的java和class文件都会存放到这个目录下。
LICENSE
许可证。
NOTICE
说明文件。
配置
配置端口号
打开conf/下的server.xml
文件,找到如下内容,进行更改
配置外部应用
不将项目放到webapp
目录下,将项目放置在外面,这就是外部应用了,通过配置将项目引入,配置的方式一共有两种:
- 打开
conf/下的server.xml
文件,找到<Host>
元素,在其中添加<Context>
元素,代码如下:
- 打开
<Context path="test" docBase="D:/test"/>
path:指定当前应用的名称
docBase:指定应用的物理位置
访问路径:http://localhost:8080/test/
-
conf/catalana/localhost
下创建test.xml
文件,文件中编写<Context>
元素:
-
<Context docBase="D:/test"/>
文件名:指定当前应用的名称
docBase:指定应用的物理位置
浏览器访问路径:由于以test.xml文件命名,所以项目访问名为test:http://localhost:8080/test/index.html
点击tomcat.exe一闪而过
解压版tomcat
点击tomcat.exe
一闪而过,服务器没有启动起来,原因就是没有注册tomcat服务,解决方案为cmd
到 tomcat /bin
下的目录,执行service.bat install
命令,当看到has been installed
时,就证明服务注册完成,点击tomcat.exe
不会闪退,服务器正常启动!
访问 manager webapp 404
从Tomcat
版本8开始,除localhost之外的任何人都无法访问 manager/html url
,要访问/manager/html url
,您需要在manager app
的context.xml
中进行以下更改。
解决方案
1、转到$TOMCAT_HOME/webapps/manager/META-INF
位置,然后编辑context.xml
<Context antiResourceLocking="false" privileged="true" >
<Valve className="org.apache.catalina.valves.RemoteAddrValve"
allow="^.*$" />
......
</Context>
2、重启TomCat服务器