使用Tomcat的一些经验和心得
如今将使用Tomcat的一些经验和心得写到这里。作为记录和备忘。假设有朋友看到,也请指教。
1、首先是Tomcat的获取和安装。
获取当然得上Apache的官方站点下载,开源免费。并且带宽也足够。下载会非常快。
这是两种不同的下载,一个是普通安装版本号,一个是解压安装版本号。
使用起来是一样的,仅仅是在普通安装版本号中有一些界面可提供对Tomcat的快捷设置,并且普通安装会将Tomcat作为系统服务进行注冊。
2、Tomcat的执行环境搭建。
(解压版)安装(就是解压)完毕后例如以下:
Tomcat的启动是一个bat文件(Windows下),在bin文件夹下。双击就可以。
假设启动不成功。一般的情况是控制台出来一下马上消失。说明Tomcat没有找到Java的执行时环境。
简单理解。就是Tomcat找不到JDK,没办法执行。
我们“告诉”它JDK的安装路径。即在环境变量里新建JAVA_HOME(不区分大写和小写),指向安装JDK文件夹。例如以下:
这样,Tomcat就配置好了,启动就OK。
启动Tomcat,在浏览器地址栏输入http://localhost:8080/假设看到乱七八糟的关于Tomcat的介绍神马。说明配置成功。
3、Tomcat的文件夹结构介绍。
bin文件夹存放一些启动执行Tomcat的可执行程序和相关内容。
conf存放关于Tomcatserver的全局配置。
lib文件夹存放Tomcat执行或者网站执行所需的jar包,全部在此Tomcat上的网站共享这些jar包。
wabapps文件夹是默认的网站根文件夹,能够更改。
work文件夹用于在server执行时过度资源,简单来说。就是存储jsp、servlet翻译、编译后的结果。
其它文件夹和文件临时不做介绍。
4、Tomcat的默认行为。
我们的浏览器请求假设到达了Tomcat。而且请求无误,一般Tomcat会以静态页面(即html文件)的形式给与响应,这是httpserver的默认行为。
一个完整的资源请求包含:
协议(如http)
主机名(域名。如localhost、www.baidu.com)
port号(http协议默觉得80。所以我们一般向某个站点发起请求没有输入)
网站
资源位置
如http://localhost:8080/ROOT/index.jsp
那么在第二步时我们仅仅输入了域名(或者主机名)就訪问到了某个详细的页面,这是怎么回事呢?。
首先。请求会通过一些途径到达请求的主机地址并被该server(指硬件。如我们的本机电脑)上的httpserver程序获得。这一步解释起来比較麻烦,我们不做赘述,我会在其它篇幅里介绍。
比方我们输入http://localhost:8080到浏览器里。被Tomcat发现了。
如今它拿到请求,先分析我们所请求的是什么资源。
因为我们没有指定。它会到默认的网站去拿默认的页面给我们。
如今我们把过程走一遍:
server端:Tomcat监听着8080port,时时注意是否有请求过来。
client浏览器发出请求,到达了server端,因为port的分配,请求终于被Tomcat得到。
Tomcat解析请求的资源,发现没有指定须要的是哪个网站下的哪个资源。
Tomcat在默认的网站下把默认的页面返回给client浏览器作为响应。
5、更改Tomcat默认配置。
①、改动Tomcat监听port。
我们都有过訪问站点的经历。我们一般仅仅输入了域名对吧。那么如果我们如今作为网络服务提供者。将要对外公布站点,我们怎么让用户仅仅输入我们的域名就能看到我们为他/她准备的网页呢?
首先我们须要将监听port设置为80。道理非常easy,用户不会在浏览器输入:8080来訪问站点,浏览器也不会自己主动将请求发送到server的8080port。
在%TOMCAT_HOME%(下面代指Tomcat的安装路径)下的conf文件夹下的server.xml文件里改动。
这个文件中东西不少,事实上大家不必在意。为什么呢?你把凝视删除后再把整个xml看作一个对象。是吧,每一个节点是一个属性,这个属性又可能是一个对象。它里面有属性……要这样去理解,或者直接觉得是Tomcat的配置信息到也没错。
这样,就不用输入:8080了。
②、改动默认网站。
首先说,网站是具有特定结构的目录。这一点在Tomcat里表现得极为清晰。
网站。在server上肯定是用目录(即目录结构)来存储和管理的。可是它和普通的目录又不同。在Tomcat里,可用于作为网站的目录必须有例如以下特点:拥有一个名为WEB-INF的子目录。该子目录下必须有一个名为web.xml的文件,并且该xml文件必须受约束与特定的DTD。
我们先配置或者说叫创建一个网站,再将其设置为默认网站。
配置网站:创建目录,创建WEB-INF子目录,创建web.xml,完毕。web.xml内容能够參考webapps/ROOT/WEB-INF/web.xml。
设置为默认网站:
这里须要分为两步运行。
告诉Tomcat当请求哪个网站时(或者说在域名后面跟的是什么名字),你来找我。
告诉Tomcat我在哪里。
上图已经将两步配置好了(实际上Tomcat默认加上了将空网站指向ROOT的代码)。我们的d:/myweb:
假设你的网站存放在webapps文件夹下,能够使用相对路径,比方,我们将d:/myweb整个拷到%TOMCAT_HOME%/webapps下。上图的docBase非常明显就不须要加上d:/了。
我在index.html里写了几句话。然后结果出来了:
③、改动默认页面。
在上面。我们还算是中规中矩。依照常理出牌,谢了index.html。
那么假设没有写呢?Tomcat会怎么做呢?
请大家找到conf/web.xml。
这个文件是对全部网站的共同属性做出了设置。
比方大家看文件结尾处:
这个叫做欢迎页面。当没有输入资源地址时,会由上至下地查找,获取页面。进行响应。
非常清楚了吧。修改它就能够。可是不建议在这里改,会是全部网站设置变化,你应该将其拷贝到你须要修改的网站下的web.xml,进行设置。
6、虚拟主机的配置。
所谓虚拟主机,就是将一个或多个主机名(域名)和Tomcat所在的server进行绑定。因为一个IP能够和多个域名进行帮定,我们大能够将不同的域名指向server(指硬件)上的不同目录。造成一个server(或者一个IP)多个主机的“虚拟主机”效果。
这个实现起来相当的简单。
仅仅须要在server.xml文件里新建Host节点。将其属性进行不同设置就可以。

1 #你的主机名(域名)1
2 <Host name="localhost" appBase="webapps"
3 unpackWARs="true" autoDeploy="true"
4 xmlValidation="false" xmlNamespaceAware="false">
5 </Host>
6 #你的域名2
7 <Host name="www.coderecord.org" appBase="主机空间地址"
8 unpackWARs="true" autoDeploy="true"
9 xmlValidation="false" xmlNamespaceAware="false">
10 #域名3能够和域名2共用一个主机空间
11 <alias>coderecord.org</alias>
12 <Context path="" docBase="网站地址" debug="1" reloadable="true" allowLinking="true" />
13 </Host>

以上配置信息依据Tomcat的版本号不同而不同。
使用Tomcat的一些经验和心得的更多相关文章
- tomcat部署项目的一点心得
打包方式 eclipse 右键项目Export 选择WAR file 在选择将打包好的war 包存放的位置 放到tomcat中运行 : 首先将war包fang放到解压的tomcat中的weba ...
- Java面试题Tomcat的优化经验
一.掉对web.xml的监视,把jsp提前编辑成Servlet.有富余物理内存的情况,加大tomcat使用的jvm的内存 二.服务器资源 服务器所能提供CPU.内存.硬盘的性能对处理能力有决定性影响. ...
- 将eclipse上的web项目部署到Tomcat服务器上经验总结
1. 将Tomcat插件添加到eclipse上 Window --> Preferences --> Server --> Runtime Environment --> A ...
- 双非本科字节跳动Android面试经验和心得体会分享(已拿offer)
新人报道,没有什么可分享的,就记录一些自己求职的体会和心得. 我是在校招补录的时候参加了今日头条的招聘,岗位是Android开发,最后成功拿到了入场券.但是这也丝毫不值得骄傲,大家都知道:技术日新月异 ...
- 海华大赛第一名团队聊比赛经验和心得:AI在垃圾分类中的应用
摘要:为了探究垃圾的智能分类等问题,由中关村海华信息研究院.清华大学交叉信息研究院以及Biendata举办的2020海华AI垃圾分类大赛吸引了大量工程师以及高校学生的参与 01赛题介绍 随着我国经济的 ...
- Tomcat安装配置
Tomcat安装配置 很久没有通过博客对学习所得进行记录了. 现在将使用Tomcat的一些经验和心得写到这里,作为记录和备忘.如果有朋友看到,也请不吝赐教. 1.首先是Tomcat的获取和安装. 获取 ...
- Tomcat服务器的安装配置图文教程(推荐)
现在将使用Tomcat的一些经验和心得写到这里,作为记录和备忘.如果有朋友看到,也请不吝赐教. 1.首先是Tomcat的获取和安装. 获取当然得上Apache的官方网站下载,开源免费,而且带宽也足够. ...
- Apache-Tomcat的安装配置
现在将使用Tomcat的一些经验和心得写到这里,作为记录和备忘.如果有朋友看到,也请不吝赐教. 1.首先是Tomcat的获取和安装. 获取当然得上Apache的官方网站下载,开源免费,而且带宽也足够. ...
- Tomcat7.0安装配置
很久没有通过博客对学习所得进行记录了. 现在将使用Tomcat的一些经验和心得写到这里,作为记录和备忘.如果有朋友看到,也请不吝赐教. 首先,我个人使用的是apache-tomcat-7.0.27你可 ...
随机推荐
- 网页内容爬取:如何提取正文内容 BEAUTIFULSOUP的输出
创建一个新网站,一开始没有内容,通常需要抓取其他人的网页内容,一般的操作步骤如下: 根据url下载网页内容,针对每个网页的html结构特征,利用正则表达式,或者其他的方式,做文本解析,提取出想要的正文 ...
- 自学php【二】 PHP计算时间加一天
最近几天在做一个项目,主要是将SQLserver数据到MySQL数据库,一个url跑一次 同步一次昨天的数据,由于很多数据需要同步,所以做了一个操作界面的,一个单纯跑url的 在其中涉及到了对于时间的 ...
- 北大ACM(POJ1019-Number Sequence)
Question:http://poj.org/problem?id=1019 问题点:打表. Memory: 392K Time: 16MS Language: C++ Result: Accept ...
- PHP实现写LOG日志的代码
这篇文章给大家介绍的内容是关于PHP实现写LOG日志的代码,有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助. public function write_log(){ //设置目录时间 ...
- C# 绘图三种方式
如果你想在窗体上进行绘画.通常会使用以下方法. 方法1,利用控件或窗体的paint事件中的painEventArgs private void form1_Paint(object sender, P ...
- Redis系列(七)--Sentinel哨兵模式
在上一篇文章了解了主从复制,主从复制本身的容错性很差,一旦master挂掉,只能进行手动故障转移,很难完美的解决这个问题 而本文讲解的sentinel可以解决这个问题 Redis sentinel示意 ...
- Qt 如何处理密集型耗时的事情
有时候需要处理一些跟界面无关的但非常耗时的事情,这些事情跟界面在同一个线程中,由于时间太长,导致界面无法响应,处于“假死”状态.例如:在应用程序中保存文件到硬盘上,从开始保存直到文件保存完毕,程序不响 ...
- 「 COGS 2240 」 X 「 Luogu P2885 」 架设电话线
解题思路 首先很容易就想到了一个二维的朴素的 $dp$. 设 $dp[i][j]$ 表示第 $i$ 个位置的电话线杆的高度为 $j$ 时的最小花费,就需要枚举第 $i$ 个电话线杆.第 $i$ 个电话 ...
- java解析从接口获取的json内容并写到excle(只写与标题匹配的值,并非把所有的接口返回值都写进去)
需求:从接口中获取的一个json数组中有多个对象,每个对象中的值并非都需要,只需查出标题中的几项对应的值即可.且还需要按某个字段排序后依次写到excel 实现方法如下: package jansonD ...
- Laravel学习:请求到响应的生命周期
Laravel请求到响应的整个执行过程,主要可以归纳为四个阶段,即程序启动准备阶段.请求实例化阶段.请求处理阶段.响应发送和程序终止阶段. 程序启动准备阶段 服务容器实例化 服务容器的实例化和基本注册 ...