Tomcat(介绍,JDK安装,Tomcat安装,配置Tomcat监听80端口)

简介:

一、Tomcat介绍

  • 目前有很多网站是用Java编写的,所以解析Java程序就必须有相关的软件来完成,Tomcat就是其中之一

  • Tomcat是Apache软件基金会,的Jakarta项目中的一个核心项目,由apache、sun和其他一些公司及个人共同开发而成,Tomcat技术先进,性能稳定而且免费,因而深受Java爱好者的喜欢,并得到部分开发商的认可,成为目前比较流行的web因公服务器。

  • Java程序写的网站用Tomcat+jdk来运行的。

  • tomcat是一个中间件,真正起作用的,解析java脚本是jdk。

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

  • 最主流的jdk为sun公司发布的jdk,初次之外,其实IBM公司也有发布JDK,Centos上也可以用yum安装openjdk。

  • Tomcat是一个轻量级应用服务器,在中小型系统和并发用户不是很多的场合下普遍被使用,是开发和调试java程序的首选,对于初学者来说,在一台机器上配置好Apache服务器之后,可利用它相应HTML页面的访问请求。

  • 实际上,Tomcat部分是Apache服务器的拓展,但它是独立运行的,所以当你运行Tomcat时,它是作为一个独立的进程运行的。


  • 二、安装JDK

  • jdk版本1.6,1.7,1.8

  • 一、下载jdk:

  • 官网下载地址:http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html

  • 不同的操作系统版本使用不同的jdk版本

  • 我使用的是1.png

  • 二、解压jdk:

  • 下载好后,我们可以使用xftp把jdk放到/usr/local/src下

  • 解压jdk压缩包:

  • [root@lnmp ~]# tar zxvf /usr/local/src/jdk-8u151-linux-x64.tar.gz

  • 三、设置环境变量:

  • [root@lnmp ~]# 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


  • 执行以下命令,使配置生效:

  • [root@lnmp ~]# source /etc/profile


  • 检查jdk有没有安装成功,配置是否正确:

  • [root@lnmp ~]#  java -version

  • 如果显示了以下内容,说明配置正确:

  • java version "1.8.0_151"

  • Java(TM) SE Runtime Environment (build 1.8.0_151-b12)

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


  • 如果显示的不同,可能系统调用了rpm的openjdk,不要随便卸载它,系统里可能有某一个程序在使用它。我们只需要做一个临时处理就好:

  • mv /usr/bin/java /usr/bin/java_bak

  • source /etc/profile

  • 再次执行

  • [root@lnmp ~]#  java -version,显示结果就正常了


三、安装Tomcat

一、安装Tomcat

[root@lnmp src]# cd /usr/local/src/

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

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

二、启动Tomcat

因为是二进制包,所以免去了编译的过程,启动Tomcat,命令如下:

[root@lnmp bin]# /usr/local/tomcat/bin/startup.sh

在这里,我遇到了2个错误和大家分享一下。

第一个错误:

[root@lnmp bin]# /usr/local/tomcat/bin/startup.sh

-bash: /usr/local/tomcat/bin/startup.sh: 权限不够

这个好解决,我ls -l看了一下bin/的权限,发现所有者没有x执行权限

[root@lnmp tomcat]# ll

总用量 304

drw-r-xr-x.  2 root root   4096 12月 26 13:49 bin

用下面这条命令则可以解决:

[root@lnmp tomcat]# chmod -R u+x bin/


第二个错误:

[root@lnmp bin]# /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

touch: 无法创建"/usr/local/tomcat/logs/catalina.out": 没有那个文件或目录

/usr/local/tomcat/bin/catalina.sh:行464: /usr/local/tomcat/logs/catalina.out: 没有那个文件或目录

报错没有logs目录,则建立一个就好。

[root@lnmp bin]# mkdir /usr/local/tomcat/logs

[root@lnmp bin]# /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@lnmp bin]# /usr/local/tomcat/bin/shutdown.sh

Tomcat不支持restart,修改配置文件前要关闭,修改完后再开就好。


三、查看服务是否启动成功以及调用的端口。

[root@lnmp src]# ps aux |grep tomcat

root      3144 45.4  8.0 2296132 81524 pts/0   Sl   14:25   0:05 /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      3188  0.0  0.0 112680   976 pts/0    R+   14:25   0:00 grep --color=auto tomcat


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

tcp6       0      0 :::8080                 :::*                  LISTEN      3144/java           

tcp6       0      0 127.0.0.1:8005          :::*                    LISTEN      3144/java           

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

这里需要记住的是三个端口号,8080为提供web服务的端口,8005为管理端口,8009端口位第三方服务调用的端口,比如httpd和Tomcat结合时会用到。


四、在浏览器上测试。

为了方便起见,我们关闭防火墙。

[root@lnmp src]# systemctl stop firewalld

QQ图片20171226143037.png


四、配置Tomcat监听80端口

默认直接输入ip访问的是80端口,Tomcat访问的是8080端口,如果想修改为80,则需要修改server.xml文件。

[root@lnmp src]# vim /usr/local/tomcat/conf/server.xml

找到<Connector port="8080" protocol="HTTP/1.1"

修改为<Connector port="80" protocol="HTTP/1.1"


修改完后重启服务:(我们发现监听80端口的是nginx)

[root@lnmp src]# /usr/local/tomcat/bin/shutdown.sh

[root@lnmp src]# /usr/local/tomcat/bin/startup.sh

[root@lnmp src]# netstat -lntp |grep 80

tcp        0      0 0.0.0.0:80              0.0.0.0:*           LISTEN      1232/nginx: master   tcp6       0      0 :::8009                 :::*                    LISTEN      3401/java          

遇到这种情况,我们把nginx关闭,把tomcat重新启动,然后在观察

[root@lnmp src]# systemctl stop nginx

[root@lnmp src]# /usr/local/tomcat/bin/shutdown.sh

[root@lnmp src]# /usr/local/tomcat/bin/startup.sh

[root@lnmp src]# netstat -lntp |grep 80

tcp6       0      0 :::80                   :::*                    LISTEN      3401/java   tcp6       0      0 :::8009                 :::*                    LISTEN      3401/java   此时我们又发现,没有8005端口,因为从新启动后,8005作为管理端口会启动的较慢。

在8005没有启动时我们用浏览器直接去访问时很慢的,因为他要等8005启动后。











本文转自 小新锐 51CTO博客,原文链接:http://blog.51cto.com/13407306/2062868,如需转载请自行联系原作者
目录
相关文章
|
24天前
|
网络协议
iptables配置tcp端口转发
iptables配置tcp端口转发
32 1
|
1天前
|
关系型数据库 MySQL Java
Linux 安装 JDK、MySQL、Tomcat(图文并茂)
Linux 安装 JDK、MySQL、Tomcat(图文并茂)
13 2
|
2天前
|
Oracle Java 关系型数据库
Linux环境安装配置JDK11
Linux环境安装配置JDK11
19 0
|
4天前
|
监控 索引
配置本地端口镜像示例(1:N,单个配置观察端口)
1:N镜像是指将单个镜像端口的报文复制到N个不同的观察端口,主要适用于将报文复制到不同监控设备进行分析处理的场合。 1:N镜像需要配置多个观察端口,连接不同的监控设备。观察端口有单个配置和批量配置两种方式,而且这两种方式可同时配置。观察端口组一般在1:N镜像时使用,既可以简化配置,还可以节约观察端口索引(一个观察端口组无论包含多少个端口,仅占用一个观察端口索引)。
|
7天前
|
应用服务中间件 Linux 网络安全
Tomcat的安装(Linux版)
Tomcat的安装(Linux版)
18 0
|
10天前
|
Oracle Java 关系型数据库
Java 开发者必备:JDK 版本详解与选择策略(含安装与验证)
Oracle Java SE 支持路线图显示,JDK 8(LTS)支持至2030年,非LTS版本如9-11每6个月发布且支持有限。JDK 11(LTS)支持至2032年,而JDK 17及以上版本现在提供免费商用许可。LTS版本提供长达8年的支持,每2年发布一次。Oracle JDK与OpenJDK有多个社区和公司构建版本,如Adoptium、Amazon Corretto和Azul Zulu,它们在许可证、商业支持和更新方面有所不同。个人选择JDK时,可考虑稳定性、LTS、第三方兼容性和提供商支持。
24 0
|
17天前
|
Java Linux 开发工具
linux jdk的安装
linux jdk的安装
18 0
|
17天前
|
Linux Apache
CentOS 7 源码安装LAMP环境源 和apache监听别的端口
CentOS 7 源码安装LAMP环境源 和apache监听别的端口
13 0
|
30天前
|
Java Linux
linux安装jdk环境
linux安装jdk环境
29 0
|
应用服务中间件 网络协议 网络安全
Tomcat 监听初始化流程
开篇  这篇博文的主要目的是为了理清楚Tomcat监听的初始化流程,所谓的监听初始化流程是指Tomcat启动后直至Accept过程就绪能够监听连接到来为止。  只有理清楚监听的初始化后流程后才能更好的理解Tomcat处理请求的过程,所以也算是基础的一部分吧。
1405 0