09_TomCat_基础知识
【TomCat目录结构】
bin----------存放TomCat的操作命令。bat:window版本,sh:Linux版本。
startup.bat: 后台在调用catalina.bat start
shutdown.bat:后台在调用catalina.bat stop
conf---------存放TomCat服务器的各种配置文件,其中server.xml文件是核心配置文件。
lib-----------存放TomCat服务器的支撑jar包
logs---------存放TomCat的日志文件
temp--------存放TomCat运行时产生的临时文件
webapps----web应用所在的目录,即供外界访问的web资源的存放目录
work---------TomCat的工作目录。存放jsp页面运行过程中产生的临时文件。
【TomCat启动出错可能的原因】
1.闪退(JAVA_HOME环境变量问题)
原因:在TomCat服务器启动时(运行startup.bat),在本地环境变量中查找一个叫JAVA_HOME的环境变量。Tomcat由java开发,需要用jvm运行。
解决方法:在本地环境变量中配置好JAVA_HOME,如 JAVA_HOME=D:\Program Files\Java\jdk1.8.0_91
2.端口占用
原因:TomCat服务器启动所需要的端口被其它软件占用
解决方法:
*. 杀死对应端口的程序(杀死进程)
*. 改变TomCat服务器启动端口:找到/conf/server.xml
修改端口如:<Connector port="8081" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" />
3.CATALINA_HOME环境变量设置问题(假设C盘和D盘各有一个Tomcat,Catalina_home环境变量配置的是D盘的TomCat,那么会导致,双击C盘TomCat的startup.bat,却会启动D盘的TomCat)
原因:TomCat在启动成功后通过CATALINA_HOME环境变量加载TomCat的根目录下的文件(如conf、webapps)
解决方法:建议不要设置CATALINA_HOME环境变量
注意:安装版本的TomCat会自动设置CATALINA_HOME环境变量!
【Web应用程序】
* Web应用程序指供浏览器访问的程序,通常也称为Web应用。
* 一个Web应用由多个静态Web资源和动态Web资源组成,如:
1.html、css、js文件
2.Jsp文件、java程序、支持jar包
3.各种配置文件
4.组成web应用的这些文件通常会使用一个目录组织,这个目录称为Web应用所在目录。
* Web应用开发之后,如果想提供给外界访问,需要把Web应用所在目录交给Web服务管理,这个过程称为:虚拟目录的映射。
【Web应用目录结构 规范】
|--WebRoot: 根目录。一个Web应用必须有一个根目录
|--静态资源: html+css+javascript+images+xml
|--WEB-INF: 目录。名称是固定写法。
|--class: (可选)目录。名称是固定写法,存放class字节码。
|--lib: (可选)目录。名称是固定写法。存放jar包 ,不能有子目录,全部jar包放在根目录中。
|--web.xml: 文件。web应用的配置文件。
注意点:
1.不做任何配置的情况下,WEB-INF目录下的文件不能直接通过浏览器访问。
2.在web.xml文件中进行配置,那么WEB-INF目录下的内容就可以直接被外界访问到。
【关于web.xml文件】
web.xml文件是整个web应用中最重要的配置文件,它必须放在WEB-INF目录中。
在开发web应用时,但凡涉及到web应用中的web资源进行配置,全部是在web.xml文件中进行设置。
资源的配置,例如:
* 某个web资源配置为网站首页。
* 将Servlet程序映射到某个url地址上。
* 为web应用配置监听器。
* 为web应用配置过滤器。
* 把某个web资源设置成网站首页。
【TomCat站点配置】
原始的设置在conf/server.xml中:
<Host name="localhost" appBase="webapps"
unpackWARs="true" autoDeploy="true"
xmlValidation="false" xmlNamespaceAware="false"> </Host>
name:表示站点的名称。访问站点就使用站点名称。
appBase:表示站点的根目录。用于存放所有web应用。一个站点下可以包含多个web应用。
[如何在TomCat下配置一个站点]
1.修改conf/server.xml中的
<!--- 配置一个新的站点: www.baidu.com
name: 站点的名称
appBase:站点的根目录
-->
<Host name="www.baidu.com" appBase="e:\baidu"
unpackWARs="true" autoDeploy="true"
xmlValidation="false" xmlNamespaceAware="false">
</Host>
在E:\baidu\news\2.html中,写入,做好准备。

2.修改本地域名和ip映射文件host文件,加上 127.0.0.1 ww.baidu.com

3.启动TomCat,访问测试
访问默认站点:http://localhost:8080

访问新站点:http://www.baidu.com:8080/news/2.html

注:访问http://www.baidu.com:8080/news/2.html,谷歌浏览器不能正常访问,搜狗可以。
09_TomCat_基础知识的更多相关文章
- .NET面试题系列[1] - .NET框架基础知识(1)
很明显,CLS是CTS的一个子集,而且是最小的子集. - 张子阳 .NET框架基础知识(1) 参考资料: http://www.tracefact.net/CLR-and-Framework/DotN ...
- RabbitMQ基础知识
RabbitMQ基础知识 一.背景 RabbitMQ是一个由erlang开发的AMQP(Advanced Message Queue )的开源实现.AMQP 的出现其实也是应了广大人民群众的需求,虽然 ...
- Java基础知识(壹)
写在前面的话 这篇博客,是很早之前自己的学习Java基础知识的,所记录的内容,仅仅是当时学习的一个总结随笔.现在分享出来,希望能帮助大家,如有不足的,希望大家支出. 后续会继续分享基础知识手记.希望能 ...
- selenium自动化基础知识
什么是自动化测试? 自动化测试分为:功能自动化和性能自动化 功能自动化即使用计算机通过编码的方式来替代手工测试,完成一些重复性比较高的测试,解放测试人员的测试压力.同时,如果系统有不份模块更改后,只要 ...
- [SQL] SQL 基础知识梳理(一)- 数据库与 SQL
SQL 基础知识梳理(一)- 数据库与 SQL [博主]反骨仔 [原文地址]http://www.cnblogs.com/liqingwen/p/5902856.html 目录 What's 数据库 ...
- [SQL] SQL 基础知识梳理(二) - 查询基础
SQL 基础知识梳理(二) - 查询基础 [博主]反骨仔 [原文]http://www.cnblogs.com/liqingwen/p/5904824.html 序 这是<SQL 基础知识梳理( ...
- [SQL] SQL 基础知识梳理(三) - 聚合和排序
SQL 基础知识梳理(三) - 聚合和排序 [博主]反骨仔 [原文]http://www.cnblogs.com/liqingwen/p/5926689.html 序 这是<SQL 基础知识梳理 ...
- [SQL] SQL 基础知识梳理(四) - 数据更新
SQL 基础知识梳理(四) - 数据更新 [博主]反骨仔 [原文]http://www.cnblogs.com/liqingwen/p/5929786.html 序 这是<SQL 基础知识梳理( ...
- [SQL] SQL 基础知识梳理(五) - 复杂查询
SQL 基础知识梳理(五) - 复杂查询 [博主]反骨仔 [原文]http://www.cnblogs.com/liqingwen/p/5939796.html 序 这是<SQL 基础知识梳理( ...
随机推荐
- Moebius实现Sqlserver集群~介绍篇
今年是一个不平凡的一年,接触到了很多新艳的,让人兴奋的东西,虽然自己的牙掉了两颗,但感觉自己又年青了两岁,哈哈!进入正题,今年公司开始启用数据库集群,对于Sqlserver来说,实现方式并不是很多,一 ...
- Android设计模式系列--原型模式
CV一族,应该很容易理解原型模式的原理,复制,粘贴完后看具体情况是否修改,其实这就是原型模式.从java的角度看,一般使用原型模式有个明显的特点,就是实现cloneable的clone()方法.原型模 ...
- AndroidStudio快捷键汇总
最近开始全面转向Android Studio开发了,经常要去查快捷键,索性汇总下,自己方便查找 IDE 按键 说明 F1 帮助 Alt(Option)+F1 查找文件所在目录位置 Alt(Option ...
- 获取WMI硬件清单
WMI服务能够报告详细的硬件信息.通常,每个硬件都来自它们自己的WMI代理类.但是要找出这些硬件类的名字是不容易. 所有硬件类都在同一个WMI根下面,你可以在根类查询所有的硬件: Get-WmiObj ...
- Hibernate级联操作 注解
EJB3 支持的操作类型 /** * Cascade types (can override default EJB3 cascades */ public enum CascadeType { AL ...
- centos 改动字符集为GB2312的方法
这几天总是被一个问题困扰着,那就是base64的加密,在centos server上无法解密.经过重复測试才发现,原来是由于centos 系统没有GB2312库导致的. 加密端是在ASP.NET中处理 ...
- RotatingDoughnut
RotatingDoughnut.zip
- android学习日记15--WebView(网络视图)
一.WebView 1.简述 WebView(网络视图)内置WebKit引擎,能加载显示网页,还支持JS,并且能够在Android平台使用AJAXWebView可以在布局中声明,也可以在Activit ...
- 搜索引擎的提示效果完整的JavaScript代码
function divShow() { <%--判断输入的是否为空 如果为空则隐藏div 如果不为空则显示div --%> if ($("#tbxSearchKeywords& ...
- Getting started: A skeleton application
Getting started: A skeleton application In order to build our application, we will start with theZen ...