十四周四次课

16.1 Tomcat介绍

16.2 安装jdk

16.3 安装Tomcat

16.1 Tomcat介绍


Tomcat介绍

  • LNMP架构针对的开发语言是PHP语言,php 是一门开发web程序非常流行的语言,早些年流行的是ASP,在Windows平台上运行的一种编程语言,但安全性差,就网站开发人员就开始转到php,而且php相对的比较安全

  • java是一门比较庞大的开发语言,不仅可以开发建站,也可以开发大型软件工具和游戏

  • Tomcat介绍

  1. Tomcat是Apache软件基金会(Apache Software Foundation)的Jakarta项目中的一个核心项目,由Apache、Sun和其他一些公司及个人共同开发而成。

  2. java程序写的网站用tomcat+jdk来解析、运行

  3. tomcat是一个中间件,用来运行java语言写的网站,真正起作用的,解析java脚本的是jdk

  4. jdk(java development kit)是整个java的核心,它包含了java运行环境和一堆java相关的工具以及java基础库。

  5. 最主流的jdk为sun公司发布的jdk,除此之外,其实IBM公司也有发布jdk,CentOS上也可以用yum安装openjdk

  • java写的网页是jsp后缀,解析需要jdk

16.2 安装jdk


安装jdk目录概要

  • jdk版本1.6,1.7,1.8

  • 官网下载地址

  • 下载jdk8,放到/usr/local/src/目录下

  • tar zxvf jdk-8u144-linux-x64.tar.gz

  • mv jdk1.8.0_144 /usr/local/jdk1.8

  • vi /etc/profile //最后面增加

JAVA_HOME=/usr/local/jdk1.8/JAVA_BIN=/usr/local/jdk1.8/bin
JRE_HOME=/usr/local/jdk1.8/jre
PATH=$PATH:/usr/local/jdk1.8/bin:/usr/local/jdk1.8/jre/bin
CLASSPATH=/usr/local/jdk1.8/jre/lib:/usr/local/jdk1.8/lib:/usr/local/jdk1.8/jre/lib/charsets.jar
  • source /etc/profile

  • java -version

安装jdk

1.安装tomcat和jdk,首先需要安装jdk,因为tomcat要想启动,依赖于jdk的环境变量

2.jdk版本目前有1.6、1.7、1.8,简称为6、7、8

3.这里使用的是JDK的1.8版本官网地址

4.用浏览器打开jdk的官网,然后将手动将jdk下载到windows上,打开官网后,首先点同意 Accept License Agreement ,再选择一个对应的版本,即 tar.gz 的(选择的时候要看清自己的系统是多少位的,在centos6之前是区分32位或64位的,但在centos7中不在区分的,虽然有32位的版本,但是是基于64位的版本的基础上编译出来的,所以最终还是一个64位的),所以再用centos7的系统,那下载的jdk版本肯定是 x86 的.

image.png

5.选择如下版本,然后点击下载

image.png

6.下载好jdk后,在linux系统中切换到 /usr/local/src 目录下

[root@tianqi-01 ~]# cd /usr/local/src/

[root@tianqi-01 src]# ls

apr-util-1.6.1.tar.bz2  httpd-2.4.29.tar.gz                          nginx-1.12.1         php-7.1.6.tar.bz2

apache-tomcat-8.5.24.tar.gz  d?                  nginx-1.12.1.tar.gz  phpredis-develop

apr-1.6.3                    httpd-2.2.34            mariadb-10.2.6-linux-x86_64.tar.gz           php-5.6.30           phpredis-develop.zip

apr-1.6.3.tar.gz             httpd-2.2.34.tar.gz     mysql-5.6.35-linux-glibc2.5-x86_64.tar.gz    php-5.6.30.tar.gz

apr-util-1.6.1               httpd-2.4.29            mysql-5.6.35-linux-glibc2.5-x86_64.tar.gz.1  php-7.1.6

[root@tianqi-01 src]# 

7.将jdk传输到 /usr/local/src目录下,直接输入ctrl+alt+f快捷键,用xftp传输,比较方便,还非常安全,它是基于ssh传输,不需要开启ftp的端口

[root@tianqi-01 src]# ls

apr-util-1.6.1.tar.bz2  httpd-2.4.29.tar.gz                          nginx-1.12.1         php-7.1.6.tar.bz2

apache-tomcat-8.5.24.tar.gz  d?                      jdk-8u161-linux-x64.tar.gz                   nginx-1.12.1.tar.gz  phpredis-develop

apr-1.6.3                    httpd-2.2.34            mariadb-10.2.6-linux-x86_64.tar.gz           php-5.6.30           phpredis-develop.zip

apr-1.6.3.tar.gz             httpd-2.2.34.tar.gz     mysql-5.6.35-linux-glibc2.5-x86_64.tar.gz    php-5.6.30.tar.gz

apr-util-1.6.1               httpd-2.4.29            mysql-5.6.35-linux-glibc2.5-x86_64.tar.gz.1  php-7.1.6

[root@tianqi-01 src]# 

8.解压jdk安装包

[root@tianqi-01 src]# tar zxvf jdk-8u161-linux-x64.tar.gz 

[root@tianqi-01 src]# du -sh jdk1.8.0_161/        //查看大小

371M jdk1.8.0_161/

9.将解压完的包放到/usr/local/目录下,并修改名称为jdk1.8

  • mv jdk1.8.0_161 /usr/local/jdk1.8

[root@tianqi-01 src]# mv jdk1.8.0_161/ /usr/local/jdk1.8

10.编辑/etc/profile文件,这个文件是编辑环境变量

[root@tianqi-01 src]# vim /etc/profile

在文件最下方加上以下配置,主要用于定义环境变量

JAVA_HOME=/usr/local/jdk1.8/

JAVA_BIN=/usr/local/jdk1.8/bin

JRE_HOME=/usr/local/jdk1.8/jre

PATH=$PATH:/usr/local/jdk1.8/bin:/usr/local/jdk1.8/jre/bin

CLASSPATH=/usr/local/jdk1.8/jre/lib:/usr/local/jdk1.8/lib:/usr/local/jdk1.8/jre/lib/charsets.jar

保存退出

11.编辑完配置文件,使用 source 命令使文件生效

[root@tianqi-01 src]# source /etc/profile

[root@tianqi-01 src]# 

12.检验jdk是否安装成功,使用命令java -version,看版本是否为安装的1.8.0_161,在运行命令后出现以下配置,说明jdk安装成功

[root@tianqi-01 src]# java -version

java version "1.8.0_161"

Java(TM) SE Runtime Environment (build 1.8.0_161-b12)

Java HotSpot(TM) 64-Bit Server VM (build 25.161-b12, mixed mode)

[root@tianqi-01 src]# 

13.若是运行命令java -version ,结果 出现的数字和我们下载的版本不一致,或者是openjdk,这时候去思考下是否安装过openjdk。若有openjdk,可以卸载掉openjdk(直接卸载指的是线下的服务器没跑任务的东西,若是线上的服务器运行后出现其他的版本或显示openjdk,这时不能随便的卸载这个包,因为系统的某个程序有可能在使用这个openjdk)。

[root@tianqi-01 src]# rpm -qa |grep openjdk

[root@tianqi-01 src]# yum list |grep openjdk

java-1.6.0-openjdk.x86_64                 1:1.6.0.41-1.13.13.1.el7_3   base     

java-1.6.0-openjdk-demo.x86_64            1:1.6.0.41-1.13.13.1.el7_3   base     

java-1.6.0-openjdk-devel.x86_64           1:1.6.0.41-1.13.13.1.el7_3   base     

java-1.6.0-openjdk-javadoc.x86_64         1:1.6.0.41-1.13.13.1.el7_3   base     

java-1.6.0-openjdk-src.x86_64             1:1.6.0.41-1.13.13.1.el7_3   base     

java-1.7.0-openjdk.x86_64                 1:1.7.0.171-2.6.13.0.el7_4   updates  

java-1.7.0-openjdk-accessibility.x86_64   1:1.7.0.171-2.6.13.0.el7_4   updates  

java-1.7.0-openjdk-demo.x86_64            1:1.7.0.171-2.6.13.0.el7_4   updates  

java-1.7.0-openjdk-devel.x86_64           1:1.7.0.171-2.6.13.0.el7_4   updates  

java-1.7.0-openjdk-headless.x86_64        1:1.7.0.171-2.6.13.0.el7_4   updates  

java-1.7.0-openjdk-javadoc.noarch         1:1.7.0.171-2.6.13.0.el7_4   updates  

java-1.7.0-openjdk-src.x86_64             1:1.7.0.171-2.6.13.0.el7_4   updates  

java-1.8.0-openjdk.i686                   1:1.8.0.161-0.b14.el7_4      updates  

java-1.8.0-openjdk.x86_64                 1:1.8.0.161-0.b14.el7_4      updates  

java-1.8.0-openjdk-accessibility.i686     1:1.8.0.161-0.b14.el7_4      updates  

java-1.8.0-openjdk-accessibility.x86_64   1:1.8.0.161-0.b14.el7_4      updates  

java-1.8.0-openjdk-accessibility-debug.i686

java-1.8.0-openjdk-accessibility-debug.x86_64

java-1.8.0-openjdk-debug.i686             1:1.8.0.161-0.b14.el7_4      updates  

java-1.8.0-openjdk-debug.x86_64           1:1.8.0.161-0.b14.el7_4      updates  

java-1.8.0-openjdk-demo.i686              1:1.8.0.161-0.b14.el7_4      updates  

java-1.8.0-openjdk-demo.x86_64            1:1.8.0.161-0.b14.el7_4      updates  

java-1.8.0-openjdk-demo-debug.i686        1:1.8.0.161-0.b14.el7_4      updates  

java-1.8.0-openjdk-demo-debug.x86_64      1:1.8.0.161-0.b14.el7_4      updates  

java-1.8.0-openjdk-devel.i686             1:1.8.0.161-0.b14.el7_4      updates  

java-1.8.0-openjdk-devel.x86_64           1:1.8.0.161-0.b14.el7_4      updates  

java-1.8.0-openjdk-devel-debug.i686       1:1.8.0.161-0.b14.el7_4      updates  

java-1.8.0-openjdk-devel-debug.x86_64     1:1.8.0.161-0.b14.el7_4      updates  

java-1.8.0-openjdk-headless.i686          1:1.8.0.161-0.b14.el7_4      updates  

java-1.8.0-openjdk-headless.x86_64        1:1.8.0.161-0.b14.el7_4      updates  

java-1.8.0-openjdk-headless-debug.i686    1:1.8.0.161-0.b14.el7_4      updates  

java-1.8.0-openjdk-headless-debug.x86_64  1:1.8.0.161-0.b14.el7_4      updates  

java-1.8.0-openjdk-javadoc.noarch         1:1.8.0.161-0.b14.el7_4      updates  

java-1.8.0-openjdk-javadoc-debug.noarch   1:1.8.0.161-0.b14.el7_4      updates  

java-1.8.0-openjdk-javadoc-zip.noarch     1:1.8.0.161-0.b14.el7_4      updates  

java-1.8.0-openjdk-javadoc-zip-debug.noarch

java-1.8.0-openjdk-src.i686               1:1.8.0.161-0.b14.el7_4      updates  

java-1.8.0-openjdk-src.x86_64             1:1.8.0.161-0.b14.el7_4      updates  

java-1.8.0-openjdk-src-debug.i686         1:1.8.0.161-0.b14.el7_4      updates  

java-1.8.0-openjdk-src-debug.x86_64       1:1.8.0.161-0.b14.el7_4      updates  

[root@tianqi-01 src]# 

16.3 安装Tomcat

安装Tomcat目录概要

安装Tomcat

  • tomcat虽然是jdk和java 的中间件,但是如果没有了它,就不能去监听8080端口或80端口,也无法让客户端或者浏览器去访问直接访问站点,tomcat就是一个java的webserver

  • tomcat依赖于jdk ,所以需要先安装jdk

1.切换到/ues/local/src/目录下

[root@tianqi-01 ~]# cd /usr/local/src/

[root@tianqi-01 src]# 

2.下载tomcat的安装包(二进制免编译包),命令 wget https://mirrors.tuna.tsinghua.edu.cn/apache/tomcat/tomcat-8/v8.5.24/bin/apache-tomcat-8.5.24.tar.gz

[root@tianqi-01 src]#  wget https://mirrors.tuna.tsinghua.edu.cn/apache/tomcat/tomcat-8/v8.5.24/bin/apache-tomcat-8.5.24.tar.gz

3.解压包

[root@tianqi-01 src]# tar zxvf apache-tomcat-8.5.24.tar.gz 

4.解压完之后,移动到/usr/local/目录下,并更改名字为tomcat

  • mv apache-tomcat-8.5.24 /usr/local/tomcat

[root@tianqi-01 src]# mv apache-tomcat-8.5.24 /usr/local/tomcat

5.启动tomcat,因为tomcat软件包下载的是 二进制免编译包 ,不用去编译

  • /usr/local/tomcat/bin/startup.sh

[root@tianqi-01 src]# /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/local/jdk1.8

Using CLASSPATH:       /usr/local/tomcat/bin/bootstrap.jar:/usr/local/tomcat/bin/tomcat-juli.jar

Tomcat started.

[root@tianqi-01 src]# 

6.这时候可以grep查看是否有java的进程,若是有java这个进程,说明tomcat正常启动了

[root@tianqi-01 src]# ps aux |grep java

root       1411  0.3  8.2 2294596 82316 pts/0   Sl   19:24   0:07 /usr/local/jdk1.8/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 -Dignore.endorsed.dirs= -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       1598  0.0  0.0 112660   984 pts/0    R+   20:04   0:00 grep --color=auto java

[root@tianqi-01 src]# 

7.关闭tomcat的命令为/usr/local/romcat/bin/shutdown.sh ,tomcat不支持restart,若是更改了配置文件,需要去重新启动,先stop,然后start

  • /usr/local/tomcat/bin/shutdown.sh

  • 关闭tomcat,再来查看进程,会看到tomcat已经关闭

[root@tianqi-01 src]# /usr/local/tomcat/bin/shutdown.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/jdk1.8

Using CLASSPATH:       /usr/local/tomcat/bin/bootstrap.jar:/usr/local/tomcat/bin/tomcat-juli.jar

[root@tianqi-01 src]# ps aux |grep java

root       1628  0.0  0.0 112660   984 pts/0    R+   20:05   0:00 grep --color=auto java

[root@tianqi-01 src]# 

8.这时再启动tomcat

[root@tianqi-01 src]# /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/local/jdk1.8

Using CLASSPATH:       /usr/local/tomcat/bin/bootstrap.jar:/usr/local/tomcat/bin/tomcat-juli.jar

Tomcat started.

[root@tianqi-01 src]# 

9.查看tomcat的监听端口,会看到的监听端口为8080端口和8009端口,还有一个8005端口

  • 8080为提供web服务的端口,8005为管理端口,8009端口为第三方服务调用的端口,比如httpd和Tomcat结合时会用到

  • 一般使用的是8080端口

[root@tianqi-01 src]# netstat -lntp |grep java

tcp6       0      0 :::8080                 :::*                    LISTEN      2893/

java           tcp6       0      0 127.0.0.1:8005          :::*                    LISTEN      2893

java           tcp6       0      0 :::8009                 :::*                    LISTEN      2893/java           

 [root@hf-01 src]#

10.测试tomcat访问页面

11.关闭防火墙

  • 关闭firlewalld

    • systemctl stop firewalld

    • systemctl disable firewalld

[root@tianqi-01 src]# systemctl stop firewalld

[root@tianqi-01 src]# systemctl disable firewalld

Removed symlink /etc/systemd/system/dbus-org.fedoraproject.FirewallD1.service. 

Removed symlink /etc/systemd/system/basic.target.wants/firewalld.service.

[root@tianqi-01 src]# iptables -nvL

Chain INPUT (policy ACCEPT 0 packets, 0 bytes)

 pkts bytes target     prot opt in     out     source               destination         


Chain FORWARD (policy ACCEPT 0 packets, 0 bytes)

 pkts bytes target     prot opt in     out     source               destination         


Chain OUTPUT (policy ACCEPT 0 packets, 0 bytes)

 pkts bytes target     prot opt in     out     source               destination

12.关闭防火墙之后,打开浏览器访问 虚拟机的IP 加 8080端口 ,如 192.168.11.136:8080

image.png


13.打开如下的界面就是访问成功了

友情链接:http://www.apelearn.com阿铭linux