Tomcat服务器,
Tomcat服务器,
Tomcat服务器
Java,是一种跨平台的、面向对象的程序设计语言,Java技术具有卓越的通用性、高效性、平台移植性和安全性。
Java体系:Java SE(标准版)、Java EE(企业版)、Java ME(移动版)
JDK(Java Development Kit)是Sun针对Java开发者推出的Java语言的软件开发工具包
JDK已经成为使用最广泛的Java SDK
JDK是整个Java的核心:包括了整个Java的核心
Java工具(如编译、排错、打包等工具)
Java基础的类库(就像shell的函数)
JRE(Java Runtime Environment,Java运行环境),运行JAVA程序所必须的环境的集合,包含JVM标准实现及Java核心类库
JRE包括:Java虚拟机(jvm); Java核心类库和支持文件
不包含开发工具(JDK)---编译器、调试器和其它工具
JRE是JDK的子集
Java Servlet,是一种扩展Web服务器功能的组件规范,它能够以一种可移植的方法来提供动态的、面向用户的内容,处理用户请求
常见Servlet容器:IBM websphere
Oracle weblogic
Apache tomcat
RedHat Jboss
开发者一般主要开发的是Servlet容器中的Servlet代码
JSP(Java Server Page),SUN推出的类似于ASP的镶嵌型的JSP,把JSP TAG镶嵌到HTML语句中,大大简化和方便了网页的设计和修改
Tomcat是用java编写的代码
Tomcat配置文件
主配置文件:/usr/local/tomcat/conf/server.xml
定义会话管理器、JDBC:/usr/local/tomcat/conf/context.xml
用户认证的帐号和密码配置文件:/usr/local/tomcat/conf/tomcat-users.xml
主配置文件框架:<Server> <Service> <Connector> <Engine> <Host>
</Host> </Engine> </Connector> </Service> </Server>
server.xml配置文件框架
<?xml version='1.0' encoding='utf-8'?>
<Server port="8005" shutdown="SHUTDOWN"> //服务器
<Service name="Catalina"> //服务
<Connector port="8080" protocol="HTTP/1.1" //端口
connectionTimeout="20000"
redirectPort="8443" />
<Connector port="8009" protocol="AJP/1.3" redirectPort="8443" />
<Engine name="Catalina" defaultHost="localhost">
<Host name="localhost" appBase="webapps"
unpackWARs="true" autoDeploy="true">
</Host>
</Engine>
</Service>
</Server>
解析:1)Server是Tomcat实例的顶层元素,一个tomcat实例;
2)Service是一个集合,它由一个或者多个Connector以及一个Engine组成
3)Connector负责接收用户请求和向客户返回相应结果
4)Engine负责处理所有Connector所获得的客户请求,它处理在同一个Service中所有Connector元素接收到的客户请求。它匹配请求和自己的虚拟主机,并将请求发给对应的<Host>处理,默认的主机是localhost
5)一个<Engine>元素可以包含多个<Host>元素,每个<Host>的元素定义一个虚拟主机,它包含一个或多个web应用
安装部署Tomcat服务器
部署服务器软件
第一步:使用RPM安装JDK环境
[root@Proxy~]# yum –y install java-1.8.0-openjdk //安装JDK
[root@Proxy~]# yum –y install java-1.8.0-openjdk-headless //安装JDK
[root@Proxy~]# java –version //查看JAVA版本
第二步:安装Tomcat,解压apache-tomcat包
[root@Proxy~]# tar -xzf apache-tomcat-8.0.30.tar.gz
[root@Proxy~]# mv apache-tomcat-8.0.30 /usr/local/tomcat
[root@Proxy~]# ls /usr/local/tomcat //安装目录
主程序目录:/usr/local/tomcat/bin 库文件目录:/usr/local/tomcat/lib
日志目录:/usr/local/tomcat/logs 临时目录:/usr/local/tomcat/temp
配置文件目录:/usr/local/tomcat/conf 页面目录:/usr/local/tomcat/webapps
模块配置文件目录(自动编译目录jsp代码转换servlet):/usr/local/tomcat/work
第三步:修改Tomcat配置文件,创建测试JSP页面
[root@Proxy~]# vim /usr/local/tomcat/webapps/ROOT/test.jsp
<html> <body> <center>
Now time is: <%=new java.util.Date()%> //显示服务器当前时间
</center> </body> </html>
第四步:启动Tomcat
[root@Proxy~]# /usr/local/tomcat/bin/shutdown.sh 关闭服务
[root@Proxy~]# /usr/local/tomcat/bin/startup.sh
第五步:测试验证
服务器验证端口信息
[root@Proxy~]# netstat -nutlp |grep java //查看java监听的端口
[root@Proxy~]# rpm -qa |grep jdk 查询java版本
浏览测试页面 curl http://IP地址:8080
[root@Proxy~]# curl http://127.0.0.1:8080
[root@Proxy~]# curl http://127.0.0.1:8080/test.jsp
Tomcat高级应用
使用Tomcat部署虚拟主机——基于域名的虚拟主机
第一步:修改server.xml配置文件,添加Host虚拟主机
# cat /usr/local/tomcat/conf/server.xml
<Host name="www.a.com" appBase="a"
unpackWARs="true" autoDeploy="true">
</Host>
<Host name="www.b.com" appBase="b"
unpackWARs="true" autoDeploy="true">
</Host>
第二步:创建虚拟主机对应的页面根路径(创建a,b文件夹并分别创建ROOT文件夹)
# cd /usr/local/tomcat/
# mkdir -p {a,b}/ROOT
第三步:分别为ROOT文件夹添加首页index.html
echo aa > /usr/local/tomcat/a/ROOT/index.html
echo bb > /usr/local/tomcat/b/ROOT/index.html
第四步:关闭服务再起服务
bash # /usr/local/tomcat/bin/shutdown.sh
bash # /usr/local/tomcat/bin/startup.sh
第五步:客户端测试
curl http://192.168.4.5:8080
curl http://www.a.com:8080
curl http://www.b.com:8080
修改网站的首页目录(非必须)
1)使用docBase参数可以修改默认网站首页路径
[root@Proxy~]# vim /usr/local/tomcat/conf/server.xml
<Context path="" docBase="base" reloadable=”true”/>
或 <Context path="" docBase="base" />
或 <Context path="" docBase="base" />
**//appBase:定义基础目录,基础目录下可以有很多项目,默认项目为ROOT
**//docBase:定义基础目录下的首页路径,默认为ROOT
**//path:指定用户访问的URL,docBase指定页面存储的位置
[root@Proxy~]# mkdir -p /usr/local/tomcat/a/base
[root@Proxy~]# echo "BASE" > /usr/local/tomcat/a/base/index.html
[root@Proxy~]# /usr/local/tomcat/bin/shutdown.sh
[root@Proxy~]# /usr/local/tomcat/bin/startup.sh
测试查看页面是否正确
[root@client ~]# curl http://www.a.com:8080/ //结果为base页面的内容
跳转(非必须)
1)当用户访问http://www.a.com/test打开/var/www/html目录下的页面
[root@Proxy~]# vim /usr/local/tomcat/conf/server.xml
… …
<Host name="www.a.com" appBase="a" unpackWARS="true" autoDeploy="true">
<Context path="/test" docBase="/var/www/html/" />
</Host>
<Host name="www.b.com" appBase="b" unpackWARS="true" autoDeploy="true">
</Host>
… …
[root@Proxy~]# echo "Test" > /var/www/html/index.html
[root@Proxy~]# /usr/local/tomcat/bin/shutdown.sh
[root@Proxy~]# /usr/local/tomcat/bin/startup.sh
2)测试查看页面是否正确
[root@client ~]# curl http://www.a.com:8080/test
//返回/var/www/html/index.html的内容
配置Tomcat支持SSL加密网站
1)创建加密用的私钥和证书文件
[root@Proxy~]# keytool -genkeypair -alias tomcat -keyalg RSA -keystore /usr/local/tomcat/keystore //会提示输入密码,输入y或者”是“结束
2)再次修改server.xml配置文件,创建支持加密连接的Connector
[root@Proxy~]# vim /usr/local/tomcat/conf/server.xml (去掉85行的注释)
… …
<Connector port="8443" protocol="org.apache.coyote.http11.Http11NioProtocol"
maxThreads="150" SSLEnabled="true" scheme="https" secure="true"
keystoreFile="/usr/local/tomcat/keystore" keystorePass="密码"
clientAuth="false" sslProtocol="TLS" />
3)重启Tomcat服务器
[root@Proxy~]# /usr/local/tomcat/bin/catalina.sh stop
[root@Proxy~]# /usr/local/tomcat/bin/catalina.sh start
4)客户端设置host文件,并浏览测试页面进行测试
[root@client ~]# vim /etc/hosts
… …
192.168.4.5 www.a.com www.b.com
[root@client ~]# curl https://www.test.com:8443/
[root@client ~]# curl https://www.test.com:8443/
[root@client ~]# curl https://192.168.4.5:8443
[root@client ~]# curl https://www.a.com:8443
配置Tomcat日志
为虚拟主机创建独立日志文件,即在<Host></Host>中间添加(日志:/usr/local/tomcat/logs)
1)为每个虚拟主机设置不同的日志文件
[root@Proxy~]# vim /usr/local/tomcat/conf/server.xml
<Host name="www.a.com" appBase="a" unpackWARS="true" autoDeploy="true">
<Valve className="org.apache.catalina.valves.AccessLogValve"
prefix="a_access" suffix=".log"
pattern="common"/>
</Host>
<Host name="www.b.com" appBase="b" unpackWARS="true" autoDeploy="true">
<Valve className="org.apache.catalina.valves.AccessLogValve"
prefix="b_access" suffix=".log"
pattern="common"/>
</Host>
2)重启Tomcat服务器
[root@Proxy~]# /usr/local/tomcat/bin/catalina.sh stop
[root@Proxy~]# /usr/local/tomcat/bin/catalina.sh start
3)查看服务器日志文件
[root@Proxy~]# ls /usr/local/tomcat/logs/
Tomcat工作原理
Tomcat优化
并发量优化:修改Connector属性(vim /usr/local/tomcat/conf/server.xml)
相关文章
- 暂无相关文章
用户点评