Tomcat的下载和安装教程,超级详细

Tomcat的下载和安装教程,超级详细1、什么是Tomcat?tomcat是一个开源的轻量级Web应用服务器,在中小型系统和并发量小的场合下被普遍使用,是开发和调试Servlet、JSP程序的首选。最初由Sun公司的软件架构师詹姆斯·邓肯·戴维森开发,后来他帮助将其变为开源项目并由Sun公司贡献给Apache软件基金会。2、Tomcat的下载1)下载地址http://tomcat.apache.org/2)版本选择进入官网主页,看到左侧栏的download的下载目录,尽量不选择最新的版本,选择较为稳定的版本。目前最新的版本是

大家好,又见面了,我是你们的朋友全栈君。

1、什么是Tomcat?

  • tomcat是一个开源的轻量级Web应用服务器,在中小型系统和并发量小的场合下被普遍使用,是开发和调试Servlet、JSP 程序的首选。
  • 最初由Sun公司的软件架构师詹姆斯·邓肯·戴维森开发,后来他帮助将其变为开源项目并由Sun公司贡献给Apache软件基金会。

2、Tomcat的下载

1)下载地址

http://tomcat.apache.org/

2)版本选择

进入官网主页,看到左侧栏的download的下载目录,尽量不选择最新的版本,选择较为稳定的版本。目前最新的版本是tomcat 10,这里选择tomcat 8。
在这里插入图片描述

在这里插入图片描述
为了方便,可直接下载绿色版,下载到本地解压即可(注意别放在中文目录下)。
在这里插入图片描述
为了方便,我上传到了我的资源中,也可以点击这里下载:
apache-tomcat-8.5.55.rar

3、Tomcat的目录结构

在这里插入图片描述

  • bin 主要存放二进制可执行文件和脚本。
  • conf 主要存放各种配置文件。
  • lib 主要用来存放Tomcat运行需要加载的jar包。
  • logs 主要存放Tomcat在运行过程中产生的日志文件。
  • temp 主要存放Tomcat在运行过程中产生的临时文件。
  • webapps 主要存放应用程序,当Tomcat启动时会去加载该目录下的应用程序。
  • work 主要存放tomcat在运行时的编译后文件,例如JSP编译后的文件。

4、Tomcat服务的启动和关闭

1)启动方式

使用bin目录下的批处理文件startup.bat来启动Tomcat服务器,若出现一个毫秒数说明启动成功。
在这里插入图片描述
在这里插入图片描述
另外一种验证方式:
打开浏览器,在地址栏输入http://localhost:8080 或 http://127.0.0.1:8080进行打开tomcat的主页。若出现如下页面,代表启动成功。
在这里插入图片描述
8080是tomcat默认的端口号。

2)关闭方式

方式1:点击右上角x按钮直接将启动的窗口关闭;
在这里插入图片描述
方式2:使用bin目录下的批处理文件shutdown.bat来关闭Tomcat服务器
在这里插入图片描述
可以看到,刚刚开启的dos窗口被自动关闭

3)注意事项

启动 tomcat 之前首先安装JDK并配置环境变量JAVA_HOME,若未安装JDK或者未配置JAVA_HOME,启动时会闪退。
在这里插入图片描述
在这里插入图片描述

4)乱码处理

可以看到,之前启动的控制台窗口中,中文的显示是乱码的,解决如下:
右键点击控制台窗口左上角,选择属性,查看启动窗口的编码方式
在这里插入图片描述
在这里插入图片描述
可以看到,控制台编码方式是GBK,为了将编码对应上,那么只需要更改配置文件的编码方式为GBK即可。
logging.properties文件修改为java.util.logging.ConsoleHandler.encoding = GBK
在这里插入图片描述
在这里插入图片描述
修改完成后,再次启动tomcat
在这里插入图片描述
可以看到,乱码问题已被解决。

3)环境变量配置

虽然在tomcat安装目录conf下,双击startup.bat能启动。但是这有点不太方便,若希望Tomcat服务器可以在任意路径启动,则需要配置环境变量CATALINA_HOME。
win+r,输入cmd打开dos窗口,未配置前,是启动不了的:
在这里插入图片描述
以win10为例,进行环境变量配置:
在这里插入图片描述
在这里插入图片描述
重新打开dos窗口并执行startup命令:
在这里插入图片描述
可以在任意目录启动tomcat了。

5、端口号更改

我们知道,访问百度的地址是:https://www.baidu.com/,咦,这里怎么没有加端口号也可以访问?这是因为百度使用的是http默认端口80,目前很多网址都是使用默认端口,默认端口是可以省略的。所以,使用https://www.baidu.com:80/也可以访问百度地址。那么,我们能不能也把tomcat服务器也更改成80端口呢,肯定是可以的。只需更改server.xml配置文件即可,server.xml文件是服务器的主配置文件,可以设置端口号、设置域名或IP、默认加载的项目、请求编码等。
在这里插入图片描述

<Connector port="80" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" />

在这里插入图片描述
更改端口后,重启tomcat服务器
在这里插入图片描述
启动信息中可以看到,端口号已变更,访问浏览器:
在这里插入图片描述
因为端口号改成了默认端口号,所以这里访问路径可以不加端口号。
当然,也可以改成其他端口号,如:8888,只要在0~65535范围内,且不和其他特定端口号冲突即可。

6、管理员账号和密码配置

打开tomcat主页后,我们可以看到,有查看服务器状态和管理服务的按钮,进入这个菜单需要输入用户名和密码,那这个用户名和密码在哪里配置呢?
在这里插入图片描述
在这里插入图片描述
只需更改tomcat-users.xml文件即可,tomcat-users.xml文件用来配置管理Tomcat服务器的用户与权限 。

<role rolename="manager-gui"/> 
<user username="admin" password="123456" roles="manager-gui"/>

在这里插入图片描述
在这里插入图片描述
role角色从哪里看,为什么配置”manager-gui” ?可以查看指导手册。
在这里插入图片描述
在这里插入图片描述
可以看到,manager-gui 角色表示可以操作HTML界面。
修改配置文件后,重启服务器,浏览器打开tomcat主页,再次点击管理应用按钮
在这里插入图片描述
就进入到应用管理界面了,这里面有一些tomcat默认的应用。还进入服务器状态查看页面:
在这里插入图片描述

7、Tomcat服务器中项目的部署

前面在目录结构中已经介绍过,webapps 目录主要存放应用程序,那么也就是说部署的服务,会存放到这个目录。现在,直接在这个目录下创建一个子目录hello
在这里插入图片描述
再新建一个简单页面 index.html放到hello目录下

<html>
	<head>
		<title>这是示例页面</title>
	</head>
	<body>
		<h1>hello world!</h1>
	</body>
</html>

在这里插入图片描述

在浏览器输入 http://localhost:8080/hello/index.html 进行访问
在这里插入图片描述

可以看到,简易的hello项目已成功部署。
此外,路径只输入到项目名也可以访问:http://localhost:8080/hello/
在这里插入图片描述
这是因为,访问一个项目时,如果不输入具体的页面,那么默认访问的是index.html资源文件。
那么问题来了,用 http://localhost:8080/ 访问tomcat主页时,访问的是哪个资源呢?
在这里插入图片描述

其实,它默认访问的是ROOT目录下的文件:
在这里插入图片描述
在这里插入图片描述
在ROOT目录增加刚刚编写的index.html文件,再次在浏览器访问tomcat主页
在这里插入图片描述

在这里插入图片描述
可以看到,此时,就会优先访问index.html了。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/144396.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 【转载】win7下IIS的安装和配置图文教程

    【转载】win7下IIS的安装和配置图文教程

    2021年11月18日
    35
  • python标识符可以使用关键字_printf是关键字还是标识符

    python标识符可以使用关键字_printf是关键字还是标识符一、标识符用户自定义的、由程序使用的符号。不能是关键字由字母、数字、下划线组成。开头只能是字母和下划线。如:widthheightnamestudent二、关键字python预先定义了一部分具有特殊意义的标识符,用于自身使用,成为关键字或保留字。python常用关键字:33个…

    2022年9月8日
    0
  • 外汇mt4和mt5的区别_鑫圣金业mt4平台下载

    外汇mt4和mt5的区别_鑫圣金业mt4平台下载这两个交易平台之间存在巨大差异。让我们看看它们之间的显着差异。那么让我们看看mt4与mt5之间的差异。mt4和mt5的下载方式差别不大,都可以在https://www.qiejf.cn/下载和安装。主要是在功能上有区别,下面详细来讲解一下。MT4和MT5交易平台的区别:  MT4仅提供外汇交易,但另一方面,MT5使交易者可以访问货币以外的差价合约、股票和期货。  这取决于交易者决定交易什么,并在此基础上,他们可以选择他们的交易平台。MT4始终是我的首要任务。它简单、灵活,让我能够根据自

    2022年8月15日
    3
  • zookeeper实现锁(如何实现分布式锁)

    zookeeper分布式锁原理:1大家也许都很熟悉了多个线程或者多个进程间的共享锁的实现方式了,但是在分布式场景中我们会面临多个Server之间的锁的问题,实现的复杂度比较高。利用基于googlechubby原理开发的开源的zookeeper,可以使得这个问题变得简单很多。下面介绍几种可能的实现方式,并且对比每种实现方式的优缺点。1.利用节点名称的唯一性来实现共享锁ZooKee

    2022年4月12日
    57
  • tcpdump抓包命令详解_tcpdump抓udp包命令详解

    tcpdump抓包命令详解_tcpdump抓udp包命令详解linux抓包-tcpdump命令:enp4s0f0—ifconfig—>网卡名称-s0—->不限制抓包的大小port25228—->只抓取服务器上25228端口的数据流量-whk2.pcap—>保存的文件名称-v—>显示抓包的大小数字

    2022年8月20日
    5
  • Android NDK开发:打包so库及jar包供他人使用

    Android NDK开发:打包so库及jar包供他人使用Android的NDK开发相信各位已经精通各种姿势了。不过基本上都是那种native代码和java代码都在同一个工程中,因为应用从头到脚都是我们自己的,也不需要分离。但有时候可能需要我们自己把某些库打包起来供别人使用,或者使用别人提供给我们的库。本篇文章及下篇文章就讲讲so库如何打包。一、目标及方式这篇文章会讲第一种方式来打包so库,这种方式是基于jni层的,需要我们同时提供接口的jar包…

    2022年6月22日
    145

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号