Tomcat---简介---安装---配置

简介

Tomcat 服务器是一个免费的开放源代码的Web 应用服务器,Tomcat是Apache 软件基金会(Apache Software Foundation)的Jakarta 项目中的一个核心项目,它早期的名称为catalina,后来由Apache、Sun 和其他一些公司及个人共同开发而成,并更名为Tomcat。Tomcat 是一个小型的轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP 程序的首选,
因为Tomcat 技术先进、性能稳定,成为目前比较流行的Web 应用服务器。Tomcat是应用(java)服务器,它只是一个servlet容器,是Apache的扩展,但它是独立运行的。 因为Tomcat 技术先进、性能稳定,而且免费,因而深受Java 爱好者的喜爱并得到了部分软件开发商的认可,成为目前比较流行的Web 应用服务器。  
当配置正确时,Apache 为HTML页面服务,而Tomcat 实际上运行JSP 页面和Servlet。另外,Tomcat和IIS、Apache等Web服务器一样,具有处理HTML页面的功能,另外它还是一个Servlet和JSP容器,独立的Servlet容器是Tomcat的默认模式。不过,Tomcat处理静态HTML的能力不如Apache服务器。  
在Tomcat中,应用程序的部署很简单,你只需将你的WAR放到Tomcat的webapp目录下,Tomcat会自动检测到这个文件,并将其解压。你在浏览器中访问这个应用的Jsp时,通常第一次会很慢,因为Tomcat要将Jsp转化为Servlet文件,然后编译。编译以后,访问将会很快。  
Tomcat不仅仅是一个Servlet容器,它也具有传统的Web服务器的功能:处理Html页面。但是与Apache相比,它的处理静态Html的能力就不如Apache.我们可以将Tomcat和Apache集成到一块,让Apache处理静态Html,而Tomcat处理Jsp和Servlet.  
优点: 
(1)免费的 
(2)占用系统资源比较小 
(3)跨平台性好,有JAVA环境就行
(4) 开源

安装

一. 部署JAVA环境: 
# mv jdk1.7.0_67/ /usr/local/java  
# tar xf jdk-7u67-linux-x64.tar.gz  
# vim /etc/profile.d/java.sh  
    export JAVA_HOME=/usr/local/java  
    export PATH=$JAVA_HOME/bin:$PATH  
# source /etc/profile.d/java.sh  
# java -version  
    java version "1.7.0_67"  
    Java(TM) SE Runtime Environment (build 1.7.0_67-b01)  
    Java HotSpot(TM) 64-Bit Server VM (build 24.65-b04, mixed mode) 
二. 安装tomcat: 
# tar xf apache-tomcat-7.0.73.tar.gz  
# mv apache-tomcat-7.0.73 /usr/local/tomcat  
# cd /usr/local/tomcat/ 
    bin 命令:shutdown.sh 关闭tomcat;startup.sh启动tomcat 
    lib java的库 .jar 
    logs 日志 
    temp 临时文件 
    work 运行JSP脚本需要的class文件 
    conf 配置文件 
    webapps DocumentRoot  

 

三. 启动tomcat : 
方法一: 

# cd bin/  
# ./startup.sh  
    Using CATALINA_BASE: /usr/local/tomcat  
    Using CATALINA_HOME: /usr/local/tomcat  
    Using CATALINA_TMPDIR: /usr/local/tomcat/temp  
    Using JRE_HOME: /usr/local/java  
    Using CLASSPATH: /usr/local/tomcat/bin/bootstrap.jar:/usr/local/tomcat/bin/tomcat-juli.jar  
    Tomcat started.  
# netstat -tanp |grep 8080  
    tcp 0 0 :::8080 :::* LISTEN 2045/java   

 

方法二: system-V脚本: 
# vim /etc/init.d/tomcat  
    #!/bin/bash  
    # Init file for Tomcat server daemon  
    JAVA_OPTS='-Xms64m -Xmx128m'  
    JAVA_HOME=/usr/local/java  CATALINA_HOME=/usr/local/tomcat 
    export JAVA_OPTS JAVA_HOME CATALINA_HOME  
    exec $CATALINA_HOME/bin/catalina.sh $1  

 


问题1: tomcat启动特别慢(PORT: 8005) 
解决:  打开$JAVA_HOME/jre/lib/security/java.security这个文件,修改下面的内容:            
securerandom.source=file:/dev/./urandom
问题2:登陆需要账户密码

vim /usr/local/tomcat/conf/tomcat-users.xml    
<role rolename="admin-gui"/>    
<user username="sunli" password="123" roles="admin-gui"/>

配置文件

vim /usr/local/tomcat/conf/server.xml
<?xml version='1.0' encoding='utf-8'?>
<Server port="8005" shutdown="SHUTDOWN">
##Server中的port监听关闭tomcat的请求,shutdown指定向端口发送的命令串
  <Listener className="org.apache.catalina.startup.VersionLoggerListener" />
  <Listener className="org.apache.catalina.security.SecurityListener" />
  <Listener className="org.apache.catalina.core.AprLifecycleListener" SSLEngine="on" />
  <Listener className="org.apache.catalina.core.JasperListener" />
  <Listener className="org.apache.catalina.core.JreMemoryLeakPreventionListener" />
  <Listener className="org.apache.catalina.mbeans.GlobalResourcesLifecycleListener" />
  <Listener className="org.apache.catalina.core.ThreadLocalLeakPreventionListener" />
  <GlobalNamingResources>
         UserDatabaseRealm to authenticate users
    <Resource name="UserDatabase" auth="Container"
              type="org.apache.catalina.UserDatabase"
              description="User database that can be updated and saved"
              factory="org.apache.catalina.users.MemoryUserDatabaseFactory"
              pathname="conf/tomcat-users.xml" />
  </GlobalNamingResources>
  <Service name="Catalina">
    <Connector port="8080" protocol="HTTP/1.1"
##监听8080端口,负责建立HTTP连接。在通过浏览器访问Tomcat服务器的Web应用时,使用的就是这个连接器
               connectionTimeout="20000"
##连接超时时间数(毫秒)
               redirectPort="8443" />
##指定服务器正在处理http请求时收到一个SSL传输请求后重定向的端口号
    <Connector port="8009" protocol="AJP/1.3" redirectPort="8443" />
##监听8009端口,负责和apache服务器建立连接。在把Tomcat与apache集成时,需要用到这个连接器
    <Engine name="Catalina" defaultHost="localhost">
##defaultHost默认连接到哪个主机
      <Realm className="org.apache.catalina.realm.LockOutRealm">
        <Realm className="org.apache.catalina.realm.UserDatabaseRealm"
               resourceName="UserDatabase"/>
      </Realm>
      <Host name="localhost"  appBase="webapps"
##指定的主机名或ip,应用程序目录
            unpackWARs="true" autoDeploy="true">
##是否自动解压war文件 ,是否自动发布
        <Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
               prefix="localhost_access_log." suffix=".txt"
               pattern="%h %l %u %t &quot;%r&quot; %s %b %{User-Agent}i" />
##定义日志文件及格式
      </Host>
    </Engine>
  </Service>
</Server>

 

posted @ 2020-10-20 22:55  梦里花落知多少sl  阅读(75)  评论(0编辑  收藏  举报