一、配置环境变量:
1、以前我们配置的环境变量:
变量名:path
变量值:c:/jdk1.3/bin
变量名:JAVA_HOME
变量值:c:/jdk1.3
变量名:CLASSPATH
变量值:./;c:/jdk1.3/lib/dt.jar;c:/jdk1.3/lib/tools.jar
2、现在我们也可以配置为:
变量名:JAVA_HOME
变量值:C:/jdk1.3 //若你没按以上路径安装请更改为正确的路径
变量名:TOMCAT_HOME
变量值:C:/Tomcat4 //若你没按以上路径安装请更改为正确的路径
变量名:CLASSPATH
变量值:%JAVA_HOME%/lib;%TOMCAT_HOME%/lib;%JAVA_HOME%/jre/bin
变量名:path
变量值:c:/jdk1.3/bin;c:/jdk1.3/jre/bin;
二、更改tomcat运行测试目录:
假设你已有一个项目在e:/rosealet目录下,包含index.jsp及其它jsp文件和bean,如WEB-INF/classes/下的
servlet、javabean。
1.设置Tomcat以支持你的项目目录,打开C:/Tomcat4/conf/server.xml文件,在""-""添加
说明:Context (表示一个web应用程序);docBase定义本地路径;path 表示此web路径的url,
reloadable 这个属性非常重要,如果为true,则tomcat会自动检测应用程序的/WEB-INF/lib
和/WEB-INF/classes目录的变化,自动装载修改或新的bean及servlet,我们可以在不重起tomcat
的情况下看到bean带给jsp的变化。
这样请求的url:http://localhost/rosealet
2.启动Tomcat,在浏览器的地址中输入http://localhost/rosealet,如你的jsp及bean,servlet没有错误,
一般会将你的index.jsp/index.html文件的
三、Apache与Tomcat综合配置和虚拟主机配置:
若Apache与Tomcat正运行着,请关闭它们。
(1)配置Apache:
1.将下载的mod_jk.dll复制到c:/apache/modules或c:/apache/libexec 下。(无论复制到什么位置,
httpd.conf中是可以指定相应的位置的)
2.设置主页文件类型:
编辑C:/Apache/conf下的httpd.conf,在"DirectoryIndex"一行,index.html的后面也可以添加
index.jsp并保存,注意相互之间应有空格。
3.设置虚拟主机:
apache中添加虚拟主机格式:
ServerAdmin [email protected]
DocumentRoot /www/docs/dummy-host.example.com
ServerName dummy-host.example.com
ErrorLog logs/dummy-host.example.com-error_log
CustomLog logs/dummy-host.example.com-access_log common
让Apache自动控制html与jsp的解析
编辑httpd.conf,在最后加入下面这段代码。
ServerAdmin [email protected] //你的mail地址
DocumentRoot e:/rosealet //你的项目根目录,因为rosealet下可能有其他目路,因此设为e:/rosealet
ServerName localhost //你的服务名,若你的机器有域名,设为域名,现用本机作测试
ErrorLog logs/rosealet_home_log.txt //错误日志,在C:/Apache/logs下,可用其它任意名字
CustomLog logs/rosealet_Custom_log.txt common //访问日志,在C:/Apache/logs下,可用其它任意名字
4.设置Apache与Tomcat之间的连接:
让Apache遇到jsp文件时,在后台将其交由Tomcat去处理。
编辑httpd.conf,在最后加入下面这段代码。
# Using mod_jk.dll to redirect dynamic calls to Tomcat
LoadModule jk_module modules/mod_jk.dll //装载模块,用于处理连接,如mod_jk放在libexec应些为:LoadModule jk_module libexec/mod_jk.dll
AddModule mod_jk.c //使用mod_jk.c的module,此行可删除
JkWorkersFile "c:/tomcat4/conf/workers.properties" //设置模块的工作文件
JkLogFile "/logs/mod_jk.log" //设置模块工作的日志文件,Tocmat启动时会自建
JkLogLevel info //设置日志文件的等级,此行可删除
JkLogStampformat "[%a %b %d %H:%M:%S %Y] " //设置日志文件的格式,此行可删除
JkMount /servlet/* ajp13 //让Apache支持对servlet传送,用以Tomcat解析
JkMount /*.jsp ajp13 //让Apache支持对jsp传送,用以Tomcat解析
到此Apache的配置基本完成,不过这时启动Apache还不能正常工作。
(2)配置Tomcat:
在C:/Tomcat/conf下新建文件workers.properties,以前我们曾经建立过,它的内容非常多
但我们可以把它精简后如下:
workers.tomcat_home=c:/Tomcat4
workers.java_home=c:/jdk1.3
ps=/
worker.list=ajp12, ajp13
worker.ajp12.port=8007
worker.ajp12.host=localhost
worker.ajp12.type=ajp12
worker.ajp12.lbfactor=1
worker.ajp13.port=8009
worker.ajp13.host=localhost
worker.ajp13.type=ajp13
worker.ajp13.lbfactor=1
worker.loadbalancer.type=lb
worker.loadbalancer.balanced_workers=ajp12, ajp13
worker.inprocess.type=jni
worker.inprocess.class_path=$(workers.tomcat_home)$(ps)classes
worker.inprocess.class_path=$(workers.tomcat_home)$(ps)lib$(ps)jaxp.jar
worker.inprocess.class_path=$(workers.tomcat_home)$(ps)lib$(ps)parser.jar
worker.inprocess.class_path=$(workers.tomcat_home)$(ps)common$(ps)lib$(ps)jasper.jar
worker.inprocess.class_path=$(workers.tomcat_home)$(ps)common$(ps)lib$(ps)servlet.jar
worker.inprocess.class_path=$(workers.tomcat_home)$(ps)common$(ps)lib$(ps)webserver.jar
worker.inprocess.class_path=$(workers.java_home)$(ps)lib$(ps)tools.jar
worker.inprocess.cmd_line=-config
worker.inprocess.cmd_line=$(workers.tomcat_home)/conf/jni_server.xml
worker.inprocess.cmd_line=-home
worker.inprocess.cmd_line=$(workers.tomcat_home)
worker.inprocess.jvm_lib=$(workers.java_home)$(ps)jre$(ps)bin$(ps)classic$(ps)jvm.dll
worker.inprocess.stdout=$(workers.tomcat_home)$(ps)inprocess.stdout
worker.inprocess.stderr=$(workers.tomcat_home)$(ps)inprocess.stderr
worker.inprocess.sysprops=tomcat.home=$(workers.tomcat_home)
我们还可以更加精简,因我们只用ajp13其内容如下:
workers.tomcat_home=c:/Tomcat4 //让mod_jk模块知道Tomcat
workers.java_home=c:/jdk1.3 //让mod_jk模块知道j2sdk
ps=/
worker.list=ajp13 //模块版本,现有ajp14了,不要修改
worker.ajp13.port=8009 //工作端口,若没占用则不用修改
worker.ajp13.host=localhost //本机,若上面的Apache主机不为localhost,作相应修改
worker.ajp13.type=ajp13 //类型
worker.ajp13.lbfactor=1 //代理数,不用修改
2.编辑server.xml文件:
让tomcat打开ajp13端口8009
找到:
更改为:
四、测试:
1.启动Apache,Tomcat。
2.打开你的浏览器,在地址栏中输入http://localhost:8080/rosealet ,若与上面的测试相同,
则Tomcat重新配置后正常!
3.在地址栏中输入http://localhost/rosealet ,若与http://localhost:8080/rosealet的结果相同,
那恭喜你,Apache与Tomcat整合成功了!
五、虚拟主机下的配置、管理和应用:
下面以一个例子来说明虚拟主机如何同时使用Apache与Tomcat
虚拟主机host1的目录结构如下所示:
/www
|---host1 虚拟主机host1的主目录
| |--htdocs 普通根目录:用于显示静态页面或php程序
| |----logs apache访问日志
| |----webapps java应用目录(新加,与tomcat的webapps目录无任何关联)
| |--ROOT jsp根目录:用于显示jsp页面程序
| |----kim 一套java应用实例
|---host2 虚拟主机host2的主目录
............
要让虚拟主机host1能同时使用Apache与Tomcat4,需要做如下配置:
1、编辑tomcat的配置文件server.xml,在最后的部分找到:
< !-- Define an Apache-Connector Service -- >