欢迎访问悦橙教程(wld5.com),关注java教程。悦橙教程  java问答|  每日更新
页面导航 : > > 文章正文

Tomcat服务器,

来源: javaer 分享于  点击 1959 次 点评:41

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)

 

相关文章

    暂无相关文章
相关栏目:

用户点评