您的位置:首页 > 运维架构 > Tomcat

tomcat服务器安装、配置及使用.

2013-09-17 11:30 309 查看
Tomcat 是一个免费的开放源代码的 Servlet 容器,它是 Apache 软件基金会的一个顶级项目,
Apache,Sun和其他一些公司及个人共同开发而成。由于有了 Sun 的参与与支持,最新的 Servlet 和 JSP 规
总是能在 Tomcat 中的到体现, Tomcat 6 支持最新的 Servlet 2.5 和JSP 2.1 规范。
lTomcat用java语言开发,Tomcat是一个符合J2EE标准的WEB服务器,但J2EE中的EJB程序无法此处运行。

准备工作:
安装JDK
tomcat需要JDK的支持,但Tomcat本身并不自带JDK,所以需要JDK的支持
Tomcat启动配置
* 配置JDK的JAVA_HOME=jdk的安装路径
* 配置CATALINA_HOME=tomcat的安装路径
例如
JAVA_HOME=C:\Program Files\Java\jdk1.5.0_05
CATALINA_HOME=D:\tomcat-6.0.18

1、tomcat安装:
绿色版:直接解压apache-tomcat-6.0.35-windows-x86.zip(32位),需要注册服务,方法见下文.
安装版:直接解压,不需要注册服务.
ütar.gz文件是Linux操作系统下的安装版本
üexe文件是Windows系统下的安装版本
üzip文件是Windows系统下的压缩版本

2、tomcat注册服务:
命令行:进入目录\apache-tomcat-6.0.35\bin\
执行命令:service.bat install 注册服务
service.bat remove 删除服务

3、tomcat启动:
点击:apache-tomcat-6.0.35\bin\startup.bat

4、tomcat停止:
直接关闭控制台
点击:apache-tomcat-6.0.35\bin\shutdown.bat
关闭和tomcat相关java.exe进程(使用命令netstat查看当前个应用程序的端口对应的进程ID)

5、tomcat启动错误:
Neither the JAVA_HOME nor the JRE_HOME environment variable is defined
At least one of these environment variable is needed to run this program
没有配置JAVA_HOME或JRE_HOME环境变量

java.net.BindException: Address already in use: JVM_Bind
tomcat的端口已经被占用了,检查tomcat是否已经启动过了,或者看该端口被那个程序占用。

6、tomcat访问: http://127.0.0.1:8080/ http://192.168.1.2:8080/ http://localhost:8080/ http://计算机的名字:8080/

7、tomcat端口配置:conf下边的Server.html文件.
tomcat默认的端口是8080.
可以通过apache-tomcat-6.0.35\conf\server.xml:
<Connector port="80" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" />

8、tomcat通过页面管理:

添加管理用户:
apache-tomcat-6.0.35\conf\tomcat-users.xml
<role rolename="manager-gui"/>
<user username="tomcat" password="tomcat" roles="manager-gui"/>

9、tomcat webapps目录中存放我们的web项目:
每一个文件夹都是一个独立的web项目
每一个文件夹的根就是这个web项目的"根"
每一个文件夹名字就是web应用程序的名字。
ROOT是我们web应用程序,默认访问项目,及访问时不需要输入项目名字.(http://localhost)

10、javaweb项目程序结构:
root
│ index.html

└─WEB-INF
│ web.xml
├─classes
└─lib

(1)Web 程序结构说明:
WEB-INF目录下的classes和lib目录都可以存放Java的类文件,在Servlet容器运行时,Web应用程序的类加载器将首先加载classes目录下的,其次才是lib目录下的类。如果这两个目录下存在同名的类,起作用的将是classes目录下的类

(2)WEB-INF 是一个特殊的目录(所有字母都要大写)。这个目录并“不属于Web应用程序可以访问的上下文路径的一部分” ,对客户端来说,这个目录是不可见的。但该目录下的内容对于Servlet代码是可见的

(3)设置WEB站点的根目录:
1>.<Host>元素的appBase属性所设置的应用程序基准目录中的ROOT子目录(我们自己的应用)
2>.server.xml:
<Host name="localhost" appBase="webapps"
unpackWARs="true" autoDeploy="true"
xmlValidation="false" xmlNamespaceAware="false">
<!--
path 不写就是默认的web应用,等同于ROOT
docBase web应用的"根"
path配置时,前边必须有"/"
-->
<Context path="" docBase="F:\mywebapp"/>
</Host>

Context标签的属性介绍:
docBase:
docBase是实际路径,这里一般写一个绝对的磁盘路径,当然也可以写相对路径,相对路径是相对于tomcat安装目录的webapps目录的,通常设置虚拟目录的目的是将tomcat的安装和项目的保存分开,所以这里建议你使用磁盘绝对路径,并且这个磁盘路径不要在tomcat安装目录下,.该属性是必须的

path:
web应用的context路径 ,是个虚拟路径,访问路径时,注意:一定要加“/”。 catalina将每个URL的起始和context path进行比较,选择合适的时web应用处理该请求。特定Host下contextpath必须是惟一的。如果context path为空字符串(“”),这个context是所属Host的缺省web应用,用来处理不能匹配任何context path的请求,.

debug:
debug 记录调试信息的详细程度。数字越大,输出越详细。如果没有指定,缺省为0。
也就是程序异常时写入日志文件里的详细程度(0---6)

reloadable:
如果希望Catalina监视/WEB-INF/classes/和/WEB-INF/lib下面的类是否发生变化,在发生
变化的时候自动重载web application,设为true。这个特征在开发阶段很有用,但也大大增
加了服务器的开销。因此,在发布以后,不推荐使用.该属性的默认值是false

3>.conf目录下依次创建catalina\localhost目录,在这个目录中创建xml文件,格式如:
<Context docBase="myappPath">
如果想我们的项目是默认项目,xml的名字为ROOT.XML

(4)部署描述符与目录的默认网页:

部署描述符文件
我们可以配置项目的默认页面:
<WEB应用程序>/WEB-INF/web.xml下边的<welcome-file-list>节点,按照顺序依次查找页面.
<Tomcat主目录>/conf/web.xml
如果没有配置,使用 <Tomcat主目录>/conf/web.xml ,<welcome-file-list>.....</welcome-file-list>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: