第一步:下载tomcat(http://jakarta.apache.org)
有三种版本:后缀名为.gz的为Linux系统下的安装包、后缀名为.exe是windows下的安装版本、后缀名为.zip的为windows下的压缩版本,解压后就可以使用,一般使用压缩版本即可。
目前tomcat最新版本为6.0,因为它是Java编写的,安装前必须有合适的JDK,使用JDK6.0即可。
第二步:安装tomcat。
下载完tomcat压缩版本解压后看到许多目录:
bin:存放tomcat的可执行文件和脚本执行文件
conf:存放Tomcat服务器的配置文件
lib:存放Tomcat服务器所需的各种JAR文件
logs:存放Tomcat的日志文件
temp:存放Tomcat的临时文件
webapps:web应用程序发布目录
work:Tomcat工作目录,把JSP生成的Servlet源文件和class文件放在此目录下
第三步: 配置环境变量。
在我的电脑->属性->高级->环境变量->系统变量中添加以下环境变量:
1.JAVA_HOME=C:/Program Files/Java/jdk1.6.0_16;
C:/Program Files/Java/jdk1.6.0_16为jre所在目录。因为tomcat由java编写。需要被jvm所解析。Tomcat启动指令startup.bat 调用了catalina.bat文件,catalina.bat又调用了setclasspath.bat文件。而该文件中在寻找JAVA_HOME或者JRE_HOME,如果点击tomcat/bin目录下的startup.bat启动tomcat一闪而过,说明JAVA_HOME配置错误。
2. CATALINA_HOME=E:/Tomcat/apache-tomcat-6.0.26;
E:/Tomcat/apache-tomcat-6.0.26;为tomcat的目录。目的是保证tomcat/bin目录下的工具在任何路径下都能运行,如果在dos命令行下,出现startup.bat不是内部或外部命令。
说明CATALINA_HOME配置错误。
3. path=%JAVA_HOME%/bin;… 因为path环境变量有很多内容这个要在其他内容前添加用分号分隔.
第四步:
通过控制台输入startup或者catalina run或者进入tomcat/bin目录下点击startuup.bat文件启动tomcat,然后打开浏览器访问http://localhost:8080,如果看到tomcat的欢迎页面的话说明安装成功了。
注意:
1. 当已经启动了一个tomcat而且未关闭或者当本机装有安装版的tomcat服务器,并已启动,关闭时,是直接通过exit完成,这时这个tomcat服务还在后台运行,也就是8080还在被占用,会出现:BindException: Address already in use: JVM_Bind<null>:8080。我们可以在DOS窗口中nestat -an 来查看存活端口或者通过fport工具查看存活端口对应应用程序。
2. 在进行tomcat路径设置的时候,尽量不要写中文。或者其他特殊符号,比如空格等.
3. 如果你的机器上装有多个版本的tomcat,点击任何一个版本下bin目录中的startup.bat文件启动的tomcat都是CATALINA_HOME路径下tomcat的版本,并不是点击哪个版本目录下的startup.bat就启动哪个版本。
配置Tomcat服务器文件。
1,配置虚拟路径。
当我们需要让一个目录中的内容被外部的浏览器通过HTTP协议访问的时候,除了安装和启动一个服务器软件外还可以将该目录映射成一个虚拟的web站点目录。常用方法有两种:
a,在conf/server.xml文件中的Host元素内
定义Context元素。指定其属性为docBase="资源所在路径" path="/url路径" />
这种方式比较麻烦。因为修改了server.xml文件,需要重新启动服务器。
b,在conf目录下,定义一个文件夹,名称为引擎名称,该名称可以再server.xml的Engine元素中找到。在该文件夹下,在建立一个主机名称文件夹。在server.xml的Host元素中可以找到。
示例: conf/Catalina/localhost/
在该路径下定一个xml文件。
将Context元素配置其中。
<?xml version="1.0" encoding=utf-8?>
<Context docBase="本地路径资源" />
注意:这个Context元素中可以不用定义path属性。该xml文件名称即为path的值。
这样的好处路径名称不会重复。
在用url访问时。http://localhost:8080/xml文件名称/资源。
这种方式较为常用,不需要重启服务器。
2,当web应用程序中的内容进行了修改,要想访问修改后的内容需要重新启动服务器进行新内容的加载。
这样不利于开发,所以可以在自定义的虚拟路径xml文件中Context元素内容加入一个属性:reloadable="true"即可。这样是针对某一个web应用可以在修改后进行自动加载。
如果想对所有的web应用都进行修改后自动加载。可以在conf/Context.xml文件中的Context元素内容添加一个属性:reloadable="true"即可。
但是,如果web应用程序完成发布。一定要发布前将这个属性的值置为false。因为如果为true消耗服务器资源。
3,为了我们方便我们进行程序的查看和运行。
通常都会在开发时,将cong/web.xml文件中的listings的值置为true,这样的好处在于可以查看项目下的文件。
但是在发布时,一定要将该值改为false,否则出现安全隐患。
4,更改端口。
通常可以使用8080tomcat默认端口,但是如果安装了Oracle,它也占用8080端口,容易出现端口冲突,
所以可以在server.xml文件中将该端口改掉。重启服务器即可。
5,建立用户名和密码,打开tomcat的管理程序。
在主页上进入Tomcat Manager
通过用户名和密码。这两项可以在conf/tomcat-users.xml文件中进行配置。
6, 配置基于主机名的虚拟主机
Web浏览器与web服务器建立连接后除了将请求的URL的资源路径发送给web服务器外还会将url的主机部分作为HTTP的请求消息偷得Host头发送给web服务器,如果一个web服务器上建立的多个站点采用不同主机名来作为各自的标识信息,那么服务器会根据Host字段中所设置的主机名确定该访问哪个wen站点。
conf/server.xml中的<Engine>标签内的</Host>标签后添加这样的内容:
<Host name="主机名" appBase="目录">
<Context path="" docBase="." />
</Host>