Apache+Tomcat(windows环境下)整合
准备工作:
•Apache安装软件(如apache2.2)
•Tomcat安装软件;(如Tomcat7.0)
•jre
下载地址:http://java.sun.com/j2se/1.5.0/download.jsp
或者安装jdk(因为jdk中带有jre)
•JK-apache-2.0.55(一下简称jk)
下载地址:http://www.apache.org/dist/tomcat/tomcat-connectors/jk/binaries/
[注:下载的jk的版本一定要和Apache的 版本相同、jk的格式也不都是”.so”的]
开始安装:
[注:安装顺序可以适当调整,但jre一定要在Tomcat之前安装]
•安装jre(或jdk)
[注:配置环境变量:
JAVA_HOME = d:\Java\jre1.5.0_06
PATH = d:\Java\jre1.5.0_06\bin
]
•安装apache
[注:安装完成后,停止apache服务你可以在窗口的托盘看到他的图标,双击图标,在弹开的窗口选择"Open Apache Monitor",点Stop
]
•安装Tomcat
[注:安装完成后,打开浏览器输入网址http://127.0.0.1:8080 查看]
•Jk的安装
把mod_jk.so拷贝到Apache安装目录下的modules文件夹下(如:d:\Apache\Apache2\modules\下)。
在【运行】>【cmd】>【”d:\Apache\Apache2\bin\Apache.exe” -t】如果出现
Syntax OK",表示apache配置正确。
配置服务器
•配置Tomcat
在Tomcat的conf文件夹下新建workers.properties文件加入内容为:
workers.tomcat_home=d:\Tomcat #让mod_jk模块知道Tomcat的位置
workers.java_home=d:\Java\jre1.5.0_06 #让mod_jk模块知道jre的位置
ps=\
worker.list=ajp13 #模块版本
worker.ajp13.port=8009 #工作端口,若没占用则不用修改
worker.ajp13.host=localhost #本机,若上面的Apache主机不为localhost,作相应修改
worker.ajp13.type=ajp13 #类型
worker.ajp13.lbfactor=1 #代理数,不用修改
•配置Apache
(设置Apache与Tomcat之间的连接,让Apache遇到jsp文件时,在后台将其交由Tomcat去处理)
打开d:\Apache\Apache2\conf下的httpd.conf,在最后加入下面这段代码并保存:
LoadModule jk_module modules/mod_jk.so #此处mod_jk的文件为你下载的文件
JkWorkersFile "d:/Tomcat/conf/workers.properties" #指定tomcat监听配置文件地址
JkLogFile "d:/Tomcat/logs/mod_jk2.log" #指定日志存放位置
JkLogLevel info
在Apache的conf/httpd.conf下设置虚拟主机:
<VirtualHost localhost>
ServerAdmin localhost
DocumentRoot d:/test1 #您的站点项目所在路径,应与tomcat中的目录设置相同
DirectoryIndex index.html index.htm index.jsp
ErrorLog logs/shsc-error_log.txt
CustomLog logs/shsc-access_log.txt common
JkMount /servlet/* ajp13 #让Apache支持对servlet传送,用以Tomcat解析
JkMount /*.jsp ajp13 #让Apache支持对jsp传送,用以Tomcat解析
JkMount /*.do ajp13 #让Apache支持对.do传送,用以Tomcat解析
</VirtualHost>
在Tomcat下conf/server.xml的设置虚拟主机:
在<Engine>的标签下
<Host name="localhost" appBase="c:/hhh" unpackWARs="true" autoDeploy="true">
<Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs" prefix="localhost_access_log." suffix=".txt" pattern="%h %l %u %t "%r" %s %b" />
</Host>
</Engine>
[注:Host标签下:
name="localhost"为 虚拟主机的名称
appBase="c:/hhh"后为虚拟主机的目录
Value标签下:
directory="logs"为日志的存放在logs文件夹下
prefix="localhost_access_log."为日志的文件的前缀名称
suffix=".txt"为日志文件的后缀名称
pattern="%h %l %u %t "%r" %s %b"为日志文件的格式
]
然后在conf/ Catalina/ localhost/ROOT.xml(没有的文件自己建立)
文件下设置虚拟主机的默认虚拟目录:
例如:
<?xml version="1.0" encoding="UTF-8"?>
<Context reloadable="true" crossContext="true" path=""
docBase="C:/hhh">
</Context>
[注:ROOT.xml中docBase="C:/hhh"设置的目录不能在Host设置的目录里面
如:Host设置的目录为appBase="c:/hhh"那么ROOT.xml中设置为
docBase="C:/hhh/a"是错误的!
]