决定玩一玩Jsp,于是要安装Tomcat。
前一阵子玩php时安装了一个EasyAPM的WAMP套件,所以现在机子上已经有Apache2.0.55了。且由于我SubVersion的服务器也是架设在它上面,所以不想把它停掉。遂决定采取Tomcat与Apache集成的方式安装。结果这一装居然用了我几个小时…
首先说明一下我的基本配置:WinXP professional sp2,EasyAPM中带的Apache2.0.55,JRE1.5.0
1、到http://tomcat.apache.org/下载了最新版的Tomcat6.0.13(注意是Windows Service Installer版的)和Tomcat Connectors(注意官方下载列表中文件名最后的那个版本是该Connector对应Apache的版本,不要图高,要与自己的Apache配套,我就因为第一次下载了对应2.2.4的版本,弄的Apache都引导不起来…)
2、Tomcat除安装路径被改为D盘之外,全部默认。此时在浏览器中打开localhost:8080应该可以看到Tomcat的欢迎页面了。
3、把下载到的Connector“mod_jk-apache-2.0.59.so”改名为“mod_jk.so”复制到Apache安装目录下的modules目录下。
4、建立mod_jk所需的配置文件workers.properties:
(其中的work1是可自定义的名字,但必需与下一步在httpd.conf中的名字相同)
# Define 1 real worker using ajp13 worker.list=worker1 # Set properties for worker1 (ajp13) worker.worker1.type=ajp13 worker.worker1.host=localhost worker.worker1.port=8009
将其保存到”D:Program FilesApache Software FoundationTomcat 6.0workers.properties”
5、修改Apatch的配置文件,将mod_jk加入Modules列表并设置将servlet目录转发给Tomcat处理
打开Apache安装目录下conf下的httpd.conf文件。
在LoadModule块中加入一行:
LoadModule jk_module MyModules/mod_jk.so
在该文件底部追加:
JkWorkersFile "D:Program FilesApache Software FoundationTomcat 6.0workers.properties" JkMount /servlet/* worker1
即将/servlet下的所有文件都交给Tomcat处理。如果你要处理跟目录下的jsp文件,可以再加一句:
JkMount /*.jsp worker1
重启Apache。
现在打开浏览器,访问localhost/servlet,应该返回Tomcat的错误信息了。
6、修改Tomcat主目录
现在Apache的主目录和Tomcat的主目录还不一致,做的Jsp还必须放在Tomcat的主目录下的servlet内才能正常运行。我们可以把它改到与Apache主目录在同一个地方,以方便运行。
打开Tomcat安装目录下conf下的server.xml,在<host>与</host>间加入
<Context path="" docBase="E:MySite" debug="0" reloadable="true" crossContext="true"/>
将”E:MySite”改为你Apache的主目录所在地就OK了。
重启Tomcat,现在只要把jsp放入”E:MySiteservlet”就可以直接在浏览器中使用localhost/serverlet/helloworld.jsp的方式访问了。
另外关于Tomcat主目录和虚拟目录介绍,可以参见这篇文章。