Tomcat 简介与安装

 

Tomcat WEB服务器


1)Tomcat是一款开源的、免费的WEB服务器软件,是Apache基金会旗下的,主要是用于发布网站代码、提供网页信息服务的,用户通过浏览器可以实现页面的访问。

2)Tomcat WEB软件默认可以处理静态网页,同时也可以处理动态网页,而Nginx、Apache只能处理静态网页,Tomcat软件主要是基于Java语言开发的,主要是用于发布JAVA动态网站。

 

静态网页(静态文件)

静态网页主要是跟后端数据库不发生交互的网页,其网页内容很少被更新或者几乎不更新,网页文件后缀命名通常是以.htm、.html、.xml等结尾的,这些内容可以直接被浏览器解析,浏览器可以解析html,css,js语法。(每个用户访问到的资源都是一样的)

动态网页(动态文件)

动态网页主要是跟后端数据库发生交互的网页,其网页内容经常被更新或者随着后端数据库内容变化而更新,网页文件后缀命名通常是以.asp、.jsp、.php等结尾的。(每个用户访问资源得到的结果可能不一样,动态资源需要被解析为静态资源返回给浏览器,通过浏览器进行解析,浏览器只能解析静态资源)

  1. JAVA动态网页(JSP:Java Server Pages)是基于JAVA语言开发的网页程序,而JAVA开发必备一个组件JDK工具包。JDK是JAVA语言开发的核心组件,同时JDK也是JAVA代码程序运行时的环境,JDK工具包中:JRE是用来解析和处理JSP网页程序的。
  2. JDK工具包主要是有两个部分组成,分别是JAVA工具(代码开发时用到)和JRE运行环境(代码运行时用到),其中JRE又是由JVM+类、库文件组成的。JVM(JAVA虚拟机)主要是用于运行和解析JAVA代码(字节码:是通过JAVAC编译器工具编译生成的)。

 

JDK的部署


[root@localhost ~]# mkdir -p /usr/java/  一般jdk都放在该目录下面
[root@localhost java]# tar xf jdk1.8.0_131.tar.gz
[root@localhost src]# ll /usr/java/jdk1.8.0_131
total 25864
drwxr-xr-x. 2 10 143     4096 Mar 15  2017 bin  #里面包含工具包
-r--r--r--. 1 10 143     3244 Mar 15  2017 COPYRIGHT
drwxr-xr-x. 4 10 143      122 Mar 15  2017 db
drwxr-xr-x. 3 10 143      132 Mar 15  2017 include
-rwxr-xr-x. 1 10 143  5097105 Mar 15  2017 javafx-src.zip
drwxr-xr-x. 5 10 143      185 Mar 15  2017 jre  #java代码运行时候所需要的
drwxr-xr-x. 5 10 143      245 Mar 15  2017 lib
-r--r--r--. 1 10 143       40 Mar 15  2017 LICENSE

............................................................................................................................

[root@localhost bin]# ./java -version    --tomcat是java语言开发的,在运行tomcat之前需要确保JDK安装了,可以看到JDK版本是1.8
java version "1.8.0_131"
Java(TM) SE Runtime Environment (build 1.8.0_131-b11)
Java HotSpot(TM) 64-Bit Server VM (build 25.131-b11, mixed mode)

 

tomcat的部署


[root@localhost src]# tar xf apache-tomcat-8.0.39.tar.gz 
[root@localhost src]# mv apache-tomcat-8.0.39 /usr/local/tomcat
[root@localhost src]# ll tomcat/
total 92
drwxr-xr-x. 2 root root  4096 May 28 15:10 bin
drwxr-xr-x. 2 root root   182 Nov  9  2016 conf
drwxr-xr-x. 2 root root  4096 May 28 15:10 lib
-rw-r--r--. 1 root root 57011 Nov  9  2016 LICENSE
drwxr-xr-x. 2 root root     6 Nov  9  2016 logs
-rw-r--r--. 1 root root  1444 Nov  9  2016 NOTICE
-rw-r--r--. 1 root root  6741 Nov  9  2016 RELEASE-NOTES
-rw-r--r--. 1 root root 16195 Nov  9  2016 RUNNING.txt
drwxr-xr-x. 2 root root    30 May 28 15:10 temp
drwxr-xr-x. 7 root root    81 Nov  9  2016 webapps
drwxr-xr-x. 2 root root     6 Nov  9  2016 work

bin目录下存放着可执行文件,着两个脚本是可以启动和关闭tomcat的脚本,.bat是windows的脚本。.sh是linux的shell脚本
-rwxr-xr-x. 1 root root   1902 Nov  9  2016 shutdown.sh
-rwxr-xr-x. 1 root root   1904 Nov  9  2016 startup.sh

conf目录:存放着配置文件
logging.properties 日志的配置文件
server.xml tomcat服务器配置的信息,比如tomcat的端口号就是配置在该文件当中
tomcat-users.xml 配置了tomcat的访问用户以及每个用户具有的角色信息进行权限管理
Web.xml  tomcat部署的所有应用配置文件,在该文件里可以配置一些默认的配置,比如默认的servelet是哪个


lib目录:存放着tomcat的一些jar包

webapps目录:tomcat默认的应用部署目录,如果有一些web项目需要部署到tomcat,那么就可以放在该目录下

work目录:jsp文件编译之后生成的java源码以及class字节码所存放的目录

 

配置JAVA_HOME,CLASSPATH环境变量


[root@localhost src]# JAVA_HOME=/usr/java/jdk1.8.0_131
[root@localhost src]# echo $JAVA_HOME
/usr/java/jdk1.8.0_131

每次开机都会加载,那么该变量永久生效,你退出当前shell重新登入还是生效,因为在你重新进入shell终端那个文件会生效

[root@localhost ~]# vim /etc/profile
[root@localhost ~]# tail -n 3 /etc/profile  在倒数两行加入如下
export JAVA_HOM=/usr/java/jdk1.8.0_131
export CLASSPATH=$CLASSPATH:$JAVA_HOME/lib:$JAVA_HOME/jre/lib  --jdk调用的lib库,这个变量定义了lib库和软件包的目录

[root@localhost ~]# source /etc/profile  加载该文件里的内容
[root@localhost local]# echo $CLASSPATH
:/usr/java/jdk1.8.0_131/lib:/usr/java/jdk1.8.0_131/jre/lib

#这些环境变量方便程序查找需要的东西

 

启动你的tomcat


[root@localhost ~]# /usr/local/tomcat/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/java/jdk1.8.0_131
Using CLASSPATH:       /usr/local/tomcat/bin/bootstrap.jar:/usr/local/tomcat/bin/tomcat-juli.jar
Tomcat started.

[root@localhost ~]# ps -ef | grep tomcat
root      10351      1  5 15:54 pts/0    00:00:04 /usr/java/jdk1.8.0_131/bin/java -Djava.util.logging.config.file=/usr/local/tomcat/conf/logging.properties -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager -Djdk.tls.ephemeralDHKeySize=2048 -Djava.protocol.handler.pkgs=org.apache.catalina.webresources -Djava.endorsed.dirs=/usr/local/tomcat/endorsed -classpath /usr/local/tomcat/bin/bootstrap.jar:/usr/local/tomcat/bin/tomcat-juli.jar -Dcatalina.base=/usr/local/tomcat -Dcatalina.home=/usr/local/tomcat -Djava.io.tmpdir=/usr/local/tomcat/temp org.apache.catalina.startup.Bootstrap start

[root@localhost ~]# netstat -tpln | grep -wE "8005|8080|8009"
tcp6       0      0 :::8080                 :::*                    LISTEN      10351/java          
tcp6       0      0 127.0.0.1:8005          :::*                    LISTEN      10351/java          
tcp6       0      0 :::8009                 :::*                    LISTEN      10351/java  

可以看到起来了三个端口,浏览器访问使用8080
[root@localhost ~]# netstat -tpln | grep -wE "8005|8080|8009" 
tcp6       0      0 :::8080                 :::*                    LISTEN      10351/java          
tcp6       0      0 127.0.0.1:8005          :::*                    LISTEN      10351/java          
tcp6       0      0 :::8009                 :::*                    LISTEN      10351/java    

8005是用来关闭tomcat的端口的,也可以使用kill命令来关闭,只是关闭的一种方式
127.0.0.1:8005  可以看到只有本机才能连接上8005端口
8009端口是tomcat和apache专属端口,apache连接tomcat就是通过该端口,nginx想连tomcat就不能够通过8009

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章