servlet学习之tomcat介绍
来源:互联网 发布:三星s5230c软件下载 编辑:程序博客网 时间:2024/06/03 14:19
菜鸟学习中~看韩顺平的视频,跟着做的笔记~
1、 tomcat无法正常启动的原因分析
1) JAVA_HOME配置错误,或者没有配置。
注意:JAVA_HOME路径后面没有分号,若加上,在启动的时候会找dir;这个地址,找不到。
若是不能更改操作系统的环境变量,可用以下方法配置JAVA_HOME。
Tomcat安装目录下,bin/startup.bat中,在25行(set"CURRENT_DIR=%cd%")前面加上set JAVA_HOME=dir,dir是java的安装路径。
2) 能正常启动,但是会导航到另外的一个页面。
与浏览器有关:IE浏览器修改管理加载项,将默认导航禁止即可。
3) 访问tomcat的时候,一定保证tomcat服务器是启动的。
4) 若机器已经占用8080端口,则无法启动。
解决方案:
(1)先将占用8080端口的程序关闭
用netstat -an查看8080端口是否被占用
用netstat -anb查看哪个应用程序占用8080端口
启动windows任务管理器的进程,查看占用8080的程序,并将其关闭。(查看—选择列(S)…—PID(进程标识符)可看见应用程序对应的端口号)
(2)主动改变tomcat的端口
Tomcat安装目录下conf/server.xml,找到Connector标签,改变默认的8080端口值。
<Connector port="8080"protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443"/>
2、Tomcat目录说明
先来一张图:
bin文件夹 启动和关闭tomcat的脚本文件。
logs目录 存放日志,可查看日志。当tomcat出错时,可查看原因。
lib目录 存放tomcat运行时需要的jar包。
webapps目录 存放web应用(web站点)。注意tomcat6.0以后才支持web站点的管理。
conf配置文件:
1) server.xml文件
用于配置和server相关的信息,比如tomcat启动的端口号,配置主机(虚拟主机和域名),配置context,即web应用。
2) web.xml文件
为web应用的配置文件,它必须放在web应用目录/WEB-INF目录下。此文件用于对web应用下的web资源进行配置,例如,将某个web资源配置为 网站首页,将servlet程序映射到某个url地址上等等。
例如:通过web.xml文件配置网站首页。
<welcome-file-list>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>
3)tomcat-users.xml文件
用于配置tomcat的用户密码和权限。
tomcat7中配置管理员,加上如下代码:
<role rolename="admin-gui"/>
<role rolename="manager-gui"/>
<user username="admin" password="123" roles="admin-gui,manager-gui"/>
注意这里的rolename后面还有后缀。貌似不同的版本,配置的不一致,可参考tomcat6与tomcat7管理员配置的区别。
检验:在tomcat首页面上点击Manager App,输入username和password后,出现Tomcat Web Application Manager,这里可以对各个web应用进行单独操作,如停止、重载、卸载等。在web应用管理中,蛮重要。
3、虚拟目录,虚拟主机
引出:当把web应用放在webapps目录下时,tomcat会自动管理,如果希望tomcat可以管理其他目录下的web应用,使用虚拟目录配置。
配置虚拟目录在tomcat的conf目录下的server.xml的host节点间加上配置信息:
<Contextpath="/Hello" docBase="e:\mywebapps\Hello"/>
注意:docBase是程序文档的绝对路径,即虚拟目录的绝对路径,path是网络路径,包括协议、地址、web应用名、资源名等,eg:http://localhost:8080/Hello/
配置完成后,需要重启tomcat。
Context属性值说明:
1) reloadable若设为true,表示tomcat会自动更新web应用,开销大。建议,开发阶段可以将reloadable设为true,而发布后,应该将其设为false。
2) unpackWARs默认为true。如果设为true,则tomcat在发布web应用时,会自动解压;否则,不会自动解压。
打war包:命令行命令:jar -cvf xxx.war *
4、在一台web服务器中配置网站,即如何配置自己的主机名。
步骤如下:
1) 在C:\Windows\System32\drivers\etc的hosts文件中,加上本机地址和要配置的域名,对照localhost的配置。
2) 在tomcat的server.xml文件中,添加一个主机名。
<Hostname="www.shoren.com" appBase="E:\mywebapps\Hello">
<Context path="/" docBase="E:\mywebapps\Hello"/>
</Host>
3) 按之前步骤设置首页面。
4) 在浏览器中输入http://www.shoren.com:8080/,(此处不可缺少8080端口号)即可。
注意:若在server.html的Host节点中,appBase和docBase设为"E:\mywebapps",则浏览器中输入的地址就应该加上Hello路径,即http://www.shoren.com:8080/Hello。
如果只在hosts文件中加入ip信息"www.shoren.com",不在server.html中修改,则输入http://www.shoren.com:8080/后,指示的就是localhost的tomcat首页面。结合浏览器请求服务器的过程就比较容易理解了。
向所得的地址发http请求,访问本地的web站点,就是向本机tomcat发请求。Tomcat得到请求后,先解析主机(一个tomcat可管理多台主机,在server.xml文件中的一个Host节点代表一个主机),然后再解析web应用(一个Host有多个web应用),解析资源名。
5、Tomcat体系结构图
这个结构图可以在conf/server.xml文件中体现出来。
改变默认主机:
当我输入localhost:8080时,会跳出tomcat的主页面;输入ip地址:8080时,也会跳出tomcat主页面。这个localhost就是默认的主机。现在希望输入ip地址:8080时,跳出自配置的www.shoren.com主页面。则www.shoren.com就是默认的主机。
步骤:在server.xml中,找到engine(一个tomcat只配有一个engine)标签,将其defaultHost属性改为你要配置的主机名(主机名在host标签中都有)。
- servlet学习之tomcat介绍
- 学习tomcat之servlet容器
- Servlet学习之web服务器Tomcat 详解
- Servlet学习之十Tomcat配置
- servlet学习之servlet中cookie和session的介绍
- tomcat、servlet学习
- tomcat/servlet学习笔记
- tomcat之servlet容器
- tomcat学习手册(一)之Servlet容器(Catalina)
- Tomcat原理学习---Servlet接口
- Servlet学习之Servlet简介
- servlet的介绍与学习
- Servlet详细介绍,学习笔记
- Servlet之HttpServlet源码介绍
- Servlet介绍之高级篇
- 【开发学习】之servlet
- 【Servlet学习之】监听器
- JAVA学习之Servlet
- EntityFrame 超时时间设置 ObjectContext.CommandTimeout
- Javascript异步编程的4种方法
- gridview视图里面获取元素
- 配置内核 Makefile:1449: *** mixed implicit and normal rules. Stop.
- System Error Codes (6000-8199) (Windows)
- servlet学习之tomcat介绍
- android 控件的使用 备注
- cocos2dx屏幕适配
- 纯CSS样式实现圆角边框
- imx系列bsp包LTIB编译
- 关于OleDbCommand中操作数据库的几种方法的区别
- 那一年 2012
- 使用json-lib-2.3.jar解析json时不抛异常JSONObject.fromObject(obj)
- android in practice_Threads and concurrency